解释 next_day
next_day()使用的标准格式如下:date_value:=next_day(date_value,day_of_the_week);
它用来返回从第一个参数指定的日期开始,第一次到达第二个参数(星期)的日期.
例如:要取2003-12-2以后的第一个星期天,就可以用如下语句
select next_day(date'2003-12-2','SUNDAY'); SQL> select next_day('2003-12-2',1) from dual;
select next_day('2003-12-2',1) from dual
ORA-01861: 文字与格式字符串不匹配
SQL> select next_day('2003-12-2','1') from dual;
select next_day('2003-12-2','1') from dual
ORA-01861: 文字与格式字符串不匹配 next_day( D , char):
返回日期晚于 D ,且星期为 CHAR 的那一天的日期。
D 必须是日期类型,CHAR 的取值 1~7 或 星期的英文
SQL> select next_day(date'2003-12-2',1) from dual;
NEXT_DAY(
---------
07-DEC-03
SQL> select next_day(to_date('2003-12-2','yyyy-mm-dd'),1) from dual;
NEXT_DAY(
---------
07-DEC-03
SQL> select next_day(to_date('2003-12-2','yyyy-mm-dd'),3) from dual;
NEXT_DAY(
---------
09-DEC-03
SQL> select next_day(to_date('2007-12-2','yyyy-mm-dd'),7) from dual;
NEXT_DAY(
---------
08-DEC-07
SQL> SELECT NEXT_DAY(date'2003-12-2','TUESDAY') FROM DUAL;
NEXT_DAY(
---------
09-DEC-03
当参数 D 的格式与数据库默认的日期格式相同时可以不使用TO_DATE 或DATE 去转换。
SQL> select next_day('15-MAR-03','TUESDAY') FROM DUAL;
NEXT_DAY(
---------
18-MAR-03
SQL> select next_day('15-MAR-03',3) FROM DUAL;
NEXT_DAY(
---------
18-MAR-03
SQL> select next_day('15-MAR-03','MON')FROM DUAL;
NEXT_DAY(
---------
17-MAR-03 SQL> SELECT NEXT_DAY(date'2003-12-2','TUESDAY') FROM DUAL;
NEXT_DAY(
---------
09-DEC-03
当参数 D 的格式与数据库默认的日期格式相同时可以不使用TO_DATE 或DATE 去转换。
SQL> select next_day('15-MAR-03','TUESDAY') FROM DUAL;
NEXT_DAY(
---------
18-MAR-03
SQL> select next_day('15-MAR-03','MON')FROM DUAL;
NEXT_DAY(
---------
17-MAR-03
页:
[1]