標籤:
一、目前時間
在sql中直接使用sysdate函數,表示目前時間。
那麼,利用目前時間,我們可以擷取到目前時間前後指定的時間資訊。
1.1 加減法
select sysdate-1 from dual;--2015-05-20 14:54:10select sysdate+1 from dual;--2015-05-22 14:53:40
1.2 trunc(‘xx‘)函數
select trunc(sysdate) from dual; --2015-05-21 00:00:00select trunc(sysdate)-1 from dual; --2015-05-20 00:00:00select trunc(sysdate,‘yyyy‘) from dual;--2015-01-01 00:00:00select trunc(sysdate,‘MM‘) from dual; --2015-05-01 00:00:00select trunc(sysdate,‘dd‘) from dual; --2015-05-21 00:00:00select trunc(sysdate,‘hh‘) from dual; --2015-05-21 14:00:00select trunc(sysdate,‘mi‘) from dual; --2015-05-21 14:59:00
trunc()函數本身就是截取函數,用在日期上,可以理解為按照指定的最小單位,擷取其下一級單位的最小時間。
trunc(sysdate);預設截取的是“小時”,即:當天最小的小時值;
trunc(sysdate)-1;可以用來做加減;
1.3 to_char(‘xx‘)函數
取前一天的時間:
select to_char(sysdate-1,‘yyyy-MM-dd‘) from dual;--2015-05-20
其他:
目前時間:2015-05-21 15:19select to_char(sysdate-1,‘yyyy-MM-dd‘) from dual;--2015-05-20select to_char(sysdate,‘yyyy‘) from dual;--2015select to_char(sysdate,‘yyy‘) from dual;--015select to_char(sysdate,‘yy‘) from dual;--15select to_char(sysdate,‘y‘) from dual;--5select to_char(sysdate,‘MM‘) from dual;--05select to_char(sysdate,‘M‘) from dual;--無法識別select to_char(sysdate,‘dd‘) from dual;--21select to_char(sysdate,‘d‘) from dual;--一周中的第幾天,周日是第一天select to_char(sysdate,‘hh24‘) from dual;--15select to_char(sysdate,‘h24‘) from dual;--無法識別select to_char(sysdate,‘mi‘) from dual;--19minselect to_char(sysdate,‘ss‘) from dual;--22sselect to_char(sysdate,‘s‘) from dual;--無法識別
更多使用參照:to_char詳細使用
oracle時間處理