两个日期相减:TIMESTAMPDIFF 函数
语法:
TIMESTAMPDIFF(unit,begin,end)
说明:
TIMESTAMPDIFF
函数返回 end - begin
的结果,其中begin
和end
是DATE或DATETIME表达式。
unit 参数是确定end - begin
的结果的单位,表示为整数。 以下是有效单位:
取值 | 含义 |
---|---|
MICROSECOND | 毫秒 |
SECOND | 秒 |
MINUTE | 分钟 |
HOUR | 小时 |
DAY | 天 |
WEEK | 星期 |
MONTH | 月 |
QUARTER | 季度 |
YEAR | 年 |
注意函数的返回值:以day为例,如果时间相差在1天以内,则返回0;在一天以外两天以内,则返回1。
例子:
-- 返回0
select timestampdiff(day, '2021-10-05 10:00:00', '2021-10-06 09:00:00')
-- 返回1
select timestampdiff(day, '2021-10-05 10:00:00', '2021-10-06 11:00:00')
日期加减时间间隔:TIMESTAMPADD 函数
语法:
TIMESTAMPADD(unit, interval, datetime)
说明:
TIMESTAMPADD
函数将指定的时间间隔 interval 加到一个日期时间值上并返回结果。
如果任何一个参数为 NULL,TIMESTAMPADD
函数将返回 NULL。
unit 同 TIMESTAMPDIFF 函数。
例子:
-- 结果:2022-05-09
SELECT TIMESTAMPADD(WEEK, 1, '2022-05-02')
-- 结果:2022-05-09
SELECT TIMESTAMPADD(DAY, 7, '2022-05-02')
日期格式化
语法:
DATE_FORMAT(date,format)
date 参数是合法的日期。format 规定日期/时间的输出格式。
常用格式有:
取值 | 含义 |
---|---|
%Y | 年(四位) |
%m | 月(两位) |
%d | 日(两位) |
%H | 小时(24小时制) |
%i | 分钟 |
%s | 秒 |
-- 2024-12-03 21:01:18
SELECT DATE_FORMAT(NOW(), '%Y-%m-%d %H:%i:%s')
-- 2021-02
SELECT DATE_FORMAT('2021-02-26 10:47:50', '%Y-%m')
时间戳转日期
语法:
from_unixtime(unix_timestamp, format)
将Unix时间戳转换为UTC时间。
format 规定日期/时间的输出格式。格式同 DATE_FORMAT
函数。如果format为空默认会使用%Y-%m-%d %H:%i:%s的格式
例子:
-- 2020-06-19 05:20:00
SELECT FROM_UNIXTIME(1592515200)
-- 2020-06-19 05:20:00
SELECT FROM_UNIXTIME(1592515200, '%Y-%m-%d %H:%i:%s')
标签:-%,10,00,函数,05,--,日期,MySQL,SELECT
From: https://www.cnblogs.com/FengZeng666/p/18585044