oracle: tochar(sysdate,'D')函数
学习oracle时碰到tochar(sysdate,'D')函数,但是发现并不是星期几,如今天是20150317,周二,但是得到的值为3
开始以为是系统日期什么的原因,试了试
select to_char(to_date('20150317','yyyymmdd'),'D') from dual;得到的值仍是3
搜了好些资料才发现,这里的3和我们理解的3不是一个概念,这里的3是代表一个星期的第几天,国外是周日算一个星期的第三天,所以不要和星期几搞混即可
后来发现还有其他几个可选参数,放在一起方便记忆理解,如下:
select to_char(sysdate,'D') from dual; 这周的第几天
select to_char(sysdate,'DD') from dual;这个月的第几天
select to_char(sysdate,'DDD') from dual;今年的第几天