请教一个日期处理函数,在线等........... select next_day(sysdate,'Wednesday')from dual;为什么这个执行的时候一直报错啊??我的数据库是10G的,在线等!!!!!!!! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 应该是和你的日期格式有关,最好用数字表示,可以避免问题的发生。SQL> select next_day(sysdate,4)from dual;NEXT_DAY(SYSDATE,4)-------------------2010-1-27 17:33:13SQL> select next_day(sysdate,'星期三')from dual;NEXT_DAY(SYSDATE,'星期三')--------------------------2010-1-27 17:33:25SQL> select next_day(sysdate,'Wednesday')from dual;select next_day(sysdate,'Wednesday')from dualORA-01846: 周中的日无效SQL> 楼主结贴这是应为你的字符集设置的原因。NEXT_DAY(date,char) date参数为日期型, char:为1~7,周日到周六。 如果你的NLS_DATE_LANGUAGE是汉字的话,char可以是1-7或者星期一到星期日可以这样修改下 alter session set NLS_DATE_LANGUAGE = American;在select NEXT_DAY (sysdate, 'MONDAY') FROM DUAL; 就OK了 alter session set NLS_DATE_LANGUAGE = 'SIMPLIFIED CHINESE';SQL> select next_day(sysdate,4)from dual; NEXT_DAY(SYSDATE,4) ------------------- 2010-1-27 17:33:13 SQL> select next_day(sysdate,'星期三')from dual; NEXT_DAY(SYSDATE,'星期三') -------------------------- 2010-1-27 17:33:25NEXT_DAY(date,char) date参数为日期型, char:为1~7,周日到周六。 如果你的NLS_DATE_LANGUAGE是汉字的话,char可以是1-7或者星期一到星期日 可以这样修改下 alter session set NLS_DATE_LANGUAGE = American; select NEXT_DAY (sysdate, 'MONDAY') FROM DUAL; SQL codeSQL> ALTER SESSION SET NLS_LANGUAGE=american;Session altered.将语言改回中文:SQL> ALTER SESSION SET NLS_LANGUAGE='SIMPLIFIED CHINESE';会话已更改。将地域改为英文:SQL> ALTER SESSION SET NLS_TERRITORY=america;会话已更改。将地域改为中文:SQL> ALTER SESSION SET NLS_TERRITORY=CHINA;会话已更改。 关于两表关联的update及delete的问题 如何将一张50W的表进行按某个字段进行拆分成多个字表 异常咨询:java.sql.SQLException:关闭的连接: next 求一存储过程写法~~~~ 新建oracle数据库配置 坛子内有搞过ORACLE STREAM的没。。。 long 型问题 ORA-01427: 单行子查询返回多个行 这个问题怎么解决呢? 启动oracle 10g,出现 到实例的代理连接 失败 oracle集群问题 能否写出这样的SQL Oracle 检测问题
-------------------
2010-1-27 17:33:13SQL> select next_day(sysdate,'星期三')from dual;NEXT_DAY(SYSDATE,'星期三')
--------------------------
2010-1-27 17:33:25SQL> select next_day(sysdate,'Wednesday')from dual;select next_day(sysdate,'Wednesday')from dualORA-01846: 周中的日无效SQL>
NEXT_DAY(date,char)
date参数为日期型,
char:为1~7,周日到周六。
如果你的NLS_DATE_LANGUAGE是汉字的话,char可以是1-7或者星期一到星期日
可以这样修改下
alter session set NLS_DATE_LANGUAGE = American;
在select NEXT_DAY (sysdate, 'MONDAY') FROM DUAL;
就OK了
SQL> select next_day(sysdate,4)from dual; NEXT_DAY(SYSDATE,4)
-------------------
2010-1-27 17:33:13 SQL> select next_day(sysdate,'星期三')from dual; NEXT_DAY(SYSDATE,'星期三')
--------------------------
2010-1-27 17:33:25NEXT_DAY(date,char)
date参数为日期型,
char:为1~7,周日到周六。
如果你的NLS_DATE_LANGUAGE是汉字的话,char可以是1-7或者星期一到星期日
可以这样修改下 alter session set NLS_DATE_LANGUAGE = American;
select NEXT_DAY (sysdate, 'MONDAY') FROM DUAL; SQL code
SQL> ALTER SESSION SET NLS_LANGUAGE=american;
Session altered.将语言改回中文:
SQL> ALTER SESSION SET NLS_LANGUAGE='SIMPLIFIED CHINESE';
会话已更改。将地域改为英文:
SQL> ALTER SESSION SET NLS_TERRITORY=america;
会话已更改。将地域改为中文:
SQL> ALTER SESSION SET NLS_TERRITORY=CHINA;会话已更改。