一尘不染

与MySQL中两个时间字段的分钟差

mysql

我使用“时间”字段设置了MySQL数据库

它不是传统意义上的HH:MM,而是事件发生的时间,因此,在游戏中还剩下5分45秒时,发生了值为5:45的事件。12:25发生了,还剩12分钟25秒,依此类推。

我希望能够找出经过的总时间,因此,如果我有一个事件发生在12:25,而下一个事件发生在5:45,我希望能够得到差值,等于6:40。然后,我想用十进制表示,在这种情况下为6.67。

这可能吗?

提前致谢。


阅读 248

收藏
2020-05-17

共1个答案

一尘不染

只需使用

TIMEDIFF(fromtime, totime):

SELECT TIMEDIFF("12:25", "5:45");

如果您需要一个十进制数,请使用TIME_TO_SEC()/3600(假定您将其传递给秒,但是您存储时间的格式是模糊的,SQL可能会将其解释为HH:MM-
您可以用它来解决CONCAT("00:",MinuteSecondField)吗?)-然后您可以使用TIME_TO_SEC()/60,这更正确)

2020-05-17