mysql计算两个日期的时间差函数

  • 2021年10月29日
  • Mysql

mysql计算两个日期时间的差函数:

-- TIMESTAMPDIFF 函数,需要传入三个参数,
-- 第一个是比较的类型,可以比较FRAC_SECOND、SECOND、 MINUTE、 HOUR、 DAY、 WEEK、 MONTH、 QUARTER或 YEAR几种类型
-- 第二个和第三个参数是待比较的两个时间,比较是后一个时间减前一个时间,具体用法如下:
SELECT TIMESTAMPDIFF(FRAC_SECOND,'2016-12-01','2016-12-30');	-- 毫秒,注意Mysql5.6之前不支持毫秒,结果:-
SELECT TIMESTAMPDIFF(SECOND,'2016-12-01','2016-12-30');		-- 秒,结果:2505600
SELECT TIMESTAMPDIFF(MINUTE,'2016-12-01','2016-12-30');		-- 分,结果:41760
SELECT TIMESTAMPDIFF(HOUR,'2016-12-01','2016-12-30');		-- 时,结果:696
SELECT TIMESTAMPDIFF(DAY,'2016-12-01','2016-12-30');		-- 天,结果:29
SELECT TIMESTAMPDIFF(WEEK,'2016-12-01','2016-12-30');		-- 周,结果:4
SELECT TIMESTAMPDIFF(MONTH,'2016-01-01','2016-12-30');		-- 月,结果:11
SELECT TIMESTAMPDIFF(QUARTER,'2016-01-01','2016-12-30');	-- 季,结果:3
SELECT TIMESTAMPDIFF(YEAR,'2015-01-01','2016-12-30');		-- 年,结果:1

-- DATEDIFF 传入两个日期函数,比较的DAY天数,第一个参数减去第二个参数的天数值
SELECT DATEDIFF('2016-12-30','2016-12-01');                     -- 天,结果:29

-- 其他的日期函数
SELECT NOW();		-- 返回当前时间,结果:2016-12-28 10:21:30
SELECT CURDATE();	-- 返回当前日期,结果:2016-12-28
SELECT CURTIME();	-- 返回当前时分秒,结果:10:22:43
SELECT DATE(NOW());	-- 格式化时间格式为年月日,结果:2016-12-28

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注