一、當前時間
在sql中直接使用sysdate函式,表示當前時間。
那麼,利用當前時間,我們可以獲取到當前時間前後指定的時間資訊。
1.1 加減法
select sysdate-1from dual;--2015-05
-2014:54:10
select sysdate+
1from dual;--2015-05
-2214:53:40
select sysdate-1/24 from dual;--查詢乙個小時前的時間
select sysdate-1/2 from dual;--查詢半天前的時間
1.2 trunc('xx')函式
select trunc(sysdate) from dual; --2015-05-21 00:00:00
select trunc(sysdate)-
1from dual; --
2015-05-20 00:00:00
select trunc(sysdate,'
yyyy
') from dual;--
2015-01-01 00:00:00
select trunc(sysdate,'
mm') from dual; --
2015-05-01 00:00:00
select trunc(sysdate,'
dd') from dual; --
2015-05-21 00:00:00
select trunc(sysdate,'
hh') from dual; --
2015-05-21 14:00:00
select 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
其他:-05-
2115:19
select to_char(sysdate-
1,'yyyy-mm-dd
') from dual;--
2015-05-20
select to_char(sysdate,'
yyyy
') from dual;--
2015
select 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;--
19min
select to_char(sysdate,'
ss') from dual;--
22sselect to_char(sysdate,'
s') from dual;--
無法識別
更多使用參照:to_char詳細使用
Oracle 時間處理
得到系統當前時間 select sysdate from dual select to char sysdate,yyyy mm dd hh24 mm ss from dual 2011 10 19 09 10 24 24小時 select to char sysdate,yyyy mm dd hh...
oracle時間處理
oracle對日期時間進行加減 加法 select sysdate,add months sysdate,12 from dual 加1年 select sysdate,add months sysdate,1 from dual 加1月 注意月的天數 28,29,30,31 下同 select s...
oracle 時間處理
select from tbdaylogger where trunc collecttime between trunc sysdate 2 and trunc sysdate 2 select from tbdaylogger where collecttime sysdate 2 select...