oracle笔记之计算年龄、工龄和TRUNC 您所在的位置:网站首页 SQL计算客户年龄Datediff oracle笔记之计算年龄、工龄和TRUNC

oracle笔记之计算年龄、工龄和TRUNC

2023-11-02 16:47| 来源: 网络整理| 查看: 265

oracle笔记之计算年龄、工龄和TRUNC 方法一:利用months_between 函数计算

SELECT TRUNC(months_between(sysdate, birthday)/12) AS age from dual;

方法二:日期转换为 ‘yyyyMMdd’ 格式后,相差一年的两个日期差为:10000,缺点是只能精确到年,并且不能四舍五入

select TRUNC((to_char(sysdate, ‘yyyyMMdd’) - to_char(birth, ‘yyyyMMdd’)) / 10000) as age from mytable

TRUNC之日期 select trunc(sysdate) from dual ;–2011-3-18 今天的日期为2011-3-18select trunc(sysdate, ‘mm’) from dual ; --2011-3-1 返回当月第一天.select trunc(sysdate,‘yy’) from dual; --2011-1-1 返回当年第一天select trunc(sysdate,‘dd’) from dual; --2011-3-18 返回当前年月日select trunc(sysdate,‘yyyy’) from dual; --2011-1-1 返回当年第一天select add_months(to_date(‘2018-01-01’,‘yyyy-mm-dd’),12)-1 from dual; – 2018-12-31 返回当年第一天select trunc(sysdate,‘d’) from dual ; --2011-3-13 (星期天)返回当前星期的第一天select trunc(sysdate, ‘hh’) from dual ; --2011-3-18 14:00:00 当前时间为14:41select trunc(sysdate, ‘mi’) from dual ; --2011-3-18 14:41:00 TRUNC()函数没有秒的精确SELECT to_date(‘20180818’,‘yyyymmdd’)-to_date(‘20180727’,‘yyyymmdd’) FROM dual; TRUNC之数字

TRUNC(number,num_digits) Number 需要截尾取整的数字。 Num_digits 用于指定取整精度的数字。Num_digits 的默认值为 0。 TRUNC()函数截取时不进行四舍五入

select trunc(123.458) from dual; --123select trunc(123.458,0) from dual ;–123select trunc(123.458,1) from dual ;–123.4select trunc(123.458,-1) from dual; --120select trunc(123.458,-4) from dual; --0select trunc(123.458,4) from dual ;–123.458select trunc(123) from dual ;–123select trunc(123,1) from dual ;–123select trunc(123,-1) from dual ;–120


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有