學習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;今年的第幾天