我想得到当前时间和第二天上午12点之间的时差。例如:当前时间是下午5:00:00。因此,与次日00:00:00(12 am)的时差将为07:00:00。到目前为止,我已经尝试了mysql的 TIMEDIFF, date_sub 但并没有达到预期的效果。非常感谢您的帮助。p、 我正在使用MySQL5.6.3
TIMEDIFF, date_sub
zbsbpyhn1#
只是使用 24:00:00 而不是 00:00:00 要获得期望的结果:
24:00:00
00:00:00
SELECT TIMEDIFF('24:00:00', '17:00:00') -- 07:00:00
时间数据类型可以表示大于/等于24小时的值,甚至是负值。
eimct9ow2#
函数的作用是:返回两个时间值或日期时间值之间的差值。它的工作方式是,提供两个要比较的值,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/
2条答案
按热度按时间zbsbpyhn1#
只是使用
24:00:00
而不是00:00:00
要获得期望的结果:时间数据类型可以表示大于/等于24小时的值,甚至是负值。
eimct9ow2#
函数的作用是:返回两个时间值或日期时间值之间的差值。
它的工作方式是,提供两个要比较的值,timediff()从第一个值中减去第二个值,然后将结果作为时间值返回。
语法如下:
其中expr1和expr2是要比较的两个值。返回值从expr1中减去expr2。
在你的情况下,你可以用日期和论点。
还要注意,时间数据类型只能在-838:59:59到838:59:59之间。因此,以下操作不起作用:
参考请访问:
https://database.guide/timediff-examples-mysql/