Oracle Trunc的用法
- 用于时间
select trunc(sysdate) from dual
union all
select trunc(sysdate-1) from dual
union all
select trunc(sysdate,'hh24') from dual
union all
select trunc(sysdate-1/24,'hh24') from dual
union all
select trunc(sysdate,'dd') from dual
结果如下
常用截取时间的用法模版如下
SELECT TRUNC(SYSDATE±AAAA,‘BBBB’) FROM DUAL
说明
其中±AAAA表示相对于当前时间的比较
- +1,表示明天的日期(显示格式为YYYY/MM/DD,例如2009/01/01)
- -1,表示昨天的日期(显示格式为YYYY/MM/DD,例如2009/01/01)
- -1/24,表示过去一小时(显示格式为YYYY/MM/DD HH24:MI:DD,例如2009/01/01 01:00:00)
其中BBBB表示不同的格式,参考如下
本周星期日:day或dy或d (每周顺序:日,一,二,三,四,五,六)
本月初日期:month或mon或mm或rm
本季日期:q
本年初日期:syear或year或yyyy或yyy或yy或y(多个y表示精度)
本世纪初日期:cc或scc
- 用于截取数字
select trunc(12.345,2) from dual
union all
select trunc(12.345) from dual
union all
select trunc(12.345,-1) from dual