to_date函数与sysdate

ıll*_*llı 4 oracle oracle10g oracle11g sysdate

select TO_CHAR(to_date(sysdate, 'DD-MON-YYYY'), 'DAY') FROM DUAL; 
Run Code Online (Sandbox Code Playgroud)

当我运行此查询时,输出为:SUNDAY.但我们今天知道的是星期二(1-1-2013).和

然后将查询更改为

select TO_CHAR(to_date('01-JAN-2013', 'DD-MON-YYYY'), 'DAY') FROM DUAL;
Run Code Online (Sandbox Code Playgroud)

答案是:星期二.

然后将查询更改为

select TO_CHAR(to_date(sysdate+1, 'DD-MON-YYYY'), 'DAY') FROM DUAL;
Run Code Online (Sandbox Code Playgroud)

答案是:星期一.

当我使用sysdate为什么它显示SUNDAY作为输出?

我是oracle db的新手.请帮我.

Nip*_*ain 5

用这个:

 select TO_CHAR(sysdate, 'DAY') FROM DUAL;
Run Code Online (Sandbox Code Playgroud)

你正在使用这个:

 to_date(sysdate, 'DD-MON-YYYY') 
Run Code Online (Sandbox Code Playgroud)

给你的日期= 1/1/0013这是星期日