oracle的trunc()函數是一個截取函數,也就是說,這個函數也可以用來截取字段中的字符,這裏我來說截取時間。
trunc()的基本格式:trunc(datetime,String str)
datetime代表時間,字段也好,時間也行,str代表要截取的時間。
上例子:
//取年份,表示該年1月1號,00:00::00
select trunc(sysdate,'yy') from dual;
//取月份,表示該年該月1號,00:00:00
select trunc(sysdate,'mm') from dual;
//去星期,表示該周的週一,00:00:00
select trunc(sysdate,'d') from dual;
如果是隻是一個trunc(sysdate)是正常顯示的。當天的00:00:00。
然後是對時間的截取:
//當前天,當前點,00分00秒
select trunc(sysdate,'hh') from dual;
//當前天,當前點,當前分00秒
select trunc(sysdate,'mi') from dual;
爲啥是mi,因爲mm代表月份,如果分鐘再用mm,就會報錯,這就是爲啥:
to_date(,'yyyy-MM-dd hh24:mi:ss')
to_char(,'yyyy-MM-dd hh2:mi:ss')