我想从当前时间和第二天凌晨12点获得时间差。
例如: -
当前时间是下午5:00:00。
因此,从00:00:00(上午12点)第二天的时间差将为07:00:00小时。
到目前为止,我已经尝试了MySQL的TIMEDIFF, date_sub
功能,但没有提供所需的结果。
高度赞赏帮助。
P.S - 我正在使用MySQL 5.6.3
只需使用24:00:00
而不是00:00:00
即可获得所需结果:
SELECT TIMEDIFF('24:00:00', '17:00:00')
-- 07:00:00
时间数据类型可以表示大于/等于24小时的值,甚至是负值。
mysql timediff()函数返回两个次或dateTime值之间的差异。
它的工作方式是,您提供了两个要比较的值,而timediff()从第一个值中减去第二个值,然后将结果返回为时间值。
语法是这样的:
TIMEDIFF(expr1,expr2)
其中expr1和expr2是要比较的两个值。返回值是从expr1减去expr2。
在您的情况下,您可以将日期与争论一起使用。
SELECT TIMEDIFF('2021-01-01 10:35:25', '2021-01-02 00:00:00');
还要注意,时间数据类型只能在-838:59:59至838:59:59范围内。因此,以下内容无效:
SELECT TIMEDIFF('2000-01-01 10:35:25', '2021-01-01 10:35:25');
供参考,请访问:
https://database.guide/timediff-examples-mysql/