SQL常用时间处理函数总结

2024-01-08 20:56:07

求两个日期的差值

datediff函数

该函数用来得到两个日期之间的差值,用法如下:

datediff(expr1,expr2)

当expr1大于expr2时,返回dif1的结果为正数,反之返回dif2的结果为负数.

timestampdiff

该函数也是用来得到两个日期之间的差值,其单位可以是时分秒天等,用法如下:

timestampdiff(unit,datetime_expr1,datetime_expr2)

unit可以是second\hour\second\year\day.

二者的区别

datediff(expr1,expr2)返回日期expr1与expr2相差的天数,当expr1大于expr2时,返回值为正数,当expr1小于expr2时,返回的值是负数。
而timestampdiff返回的正负号刚好与datediff相反,timestampdiff()除了可以返回两个日期时间之间的天数外,还可以返回对应的小时差、分钟差、年份差等。

将日期格式进行转化

date_format()

用法如下:

date_format(date,format)

– 将datetime时间类型转换成date时间类型,即将年月日时分秒转化成年月日。
例如:

select now() as 当前时间,date_format(now(),'%Y-%m-%d') as 转换后的时间;

日期的加减函数

date_sub()

对日期按照unit单位减去一个固定的值
用法:

date_sub(date,INTERVAL expr unit)

例如:

select now() as 北京时间,date_sub(now(),interval 13 hour)as 美国时间;

date_add

对日期按照unit单位加上一个固定的值
用法:

date_add(date,INTERVAL expr unit)

文章来源:https://blog.csdn.net/qq_44675837/article/details/135464822
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。