我想计算表中两行之间的时间差。
该表是一个带有ID和时间的基本表:
Id_op Heure_deb Id_act Type TIMEDIFF
OP1 2017-04-21 10:35:53 ACT4 Classique
OP1 2017-04-21 10:36:22 ACT3 Formateur
OP1 2017-04-21 14:44:13 ACT1 Classique
OP2 2017-04-21 14:43:54 ACT1 Classique
OP2 2017-04-21 14:44:08 ACT2 Classique
OP2 2017-04-21 14:44:30 ACT2 Classique
OP2 2017-04-21 14:44:34 ACT4 Classique
OP2 2017-04-24 09:11:57 ACT3 Classique
我知道函数 lag()
但它不适用于 MySQL...
你有解决办法吗?
最佳答案
使用 TIME_TO_SEC
后接 TIMEDIFF()
SELECT a.columns_to_select, TIME_TO_SEC(TIMEDIFF(a.Heure_deb, b.Heure_deb)) as Time_Difference
FROM basic_table a
LEFT JOIN basic_table b ON a.unique_column = b.unique_column
WHERE
a.id = some_value
AND
b.id = some_value
关于行之间的 MySQL DateTime,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43588596/