【sql编程2_2】日期相减,换算月数、年数

  • Post author:
  • Post category:其他


emp表:

题目:求第一个员工和最后一个员工聘用(HIREDATE)之间相差的月份数,以及这些月折合的年数。

分析:数据库录入员工信息是聘用早的在前,聘用晚的在后,所以第一个员工是聘用时间最早,最后一个员工是聘用时间最短。

select TIMESTAMPDIFF(YEAR,MIN(hiredate),MAX(hiredate))AS 相差年数,
TIMESTAMPDIFF(MONTH,MIN(hiredate),MAX(hiredate))AS 相差月数
from emp

其中TIMESTAMPDIFF(unit,datetime_expr1,datetime_expr2) 函数中三个参数的含义分别为:换算单位,日期时间(小),日期时间(大)。换算单位有:YEAR,MONTH,WEEK,DAY。

换算日期相差天数还可以用DATEDIFF(expr1,expr2),其中前一个参数为大日期,后一个参数为小日期,相反则会出现负值。



版权声明:本文为weixin_40643642原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。