我使用“时间”字段设置了MySQL数据库
它不是传统意义上的HH:MM,而是事件发生的时间,因此,在游戏中还剩下5分45秒时,发生了值为5:45的事件。12:25发生了,还剩12分钟25秒,依此类推。
我希望能够找出经过的总时间,因此,如果我有一个事件发生在12:25,而下一个事件发生在5:45,我希望能够得到差值,等于6:40。然后,我想用十进制表示,在这种情况下为6.67。
这可能吗?
提前致谢。
只需使用
TIMEDIFF(fromtime, totime): SELECT TIMEDIFF("12:25", "5:45");
如果您需要一个十进制数,请使用TIME_TO_SEC()/3600(假定您将其传递给秒,但是您存储时间的格式是模糊的,SQL可能会将其解释为HH:MM- 您可以用它来解决CONCAT("00:",MinuteSecondField)吗?)-然后您可以使用TIME_TO_SEC()/60,这更正确)
TIME_TO_SEC()/3600
CONCAT("00:",MinuteSecondField)
TIME_TO_SEC()/60