Oracle学习笔记:trunc函数

  在Oracle中可以使用trunc函数进行日期截取和数字截取,具体使用方法如下:

  1、trunc(for dates) 日期截取

  语法:trunc(date,[fmt])

select trunc(sysdate) from dual; -- 2018/11/14 返回当前的日期
select trunc(sysdate,'yyyy') from dual; -- 2018/1/1 返回当年第一天
select trunc(sysdate,'mm') from dual; -- 2018/11/1 返回当月第一天
select trunc(sysdate,'d') from dual; -- 2018/11/11 返回当周第一天 即周日
select trunc(sysdate,'dd') from dual; -- 2018/11/14 返回当前的日期 同省略格式
select trunc(sysdate,'HH24') from dual; -- 2018/11/14 刚好12点 所以00:00:00 省略
select trunc(to_date('20180513 12:30:19','yyyymmdd hh24:mi:ss'),'hh24') from dual; -- 2018/5/13 12:00:00 返回本小时的开始时间
select trunc(sysdate,'MI') from dual; -- 2018/11/14 0:32:00 返回本分钟的开始时间

  2、trunc(for number) number型数字截取

  语法:trunc(number,[decimals])

  其中,decimals指明需要保留小数点后的位数,忽略则截去小数部分。注意截取时并不对数据进行四舍五入,不同于round、floor和ceil等函数。

select trunc(123.567,2) from dual; -- 123.56
select trunc(123.456,-2) from dual; -- 100 第二个参数可以为负数 表示将小数点左边指定位数后面的部分截去 均以0记
select trunc(123.567) from dual; -- 123 默认截去小数点后面的部分

END 2018-11-14 00:42:08

猜你喜欢

转载自www.cnblogs.com/hider/p/9955790.html