Mysql 行与行之间的日期时间

Mysql 行与行之间的日期时间,mysql,Mysql,我想计算表中两行之间的时间差 该表是具有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 Class

我想计算表中两行之间的时间差

该表是具有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


您有解决方案吗?

使用
时间到秒
后跟
TIMEDIFF()


使用
TIME-TO-SEC
后跟
TIMEDIFF()


问题是更新所需的输出和要获取差异的列还不够OK抱歉,事实上此表控制某些活动的持续时间,我想计算连续两行之间的时间。该日期表示此活动的开始日期。活动的数量并不重要,只是连续行之间的时间很重要Question不足以更新所需的输出以及要获得差异的列OK抱歉,事实上此表控制某些活动的持续时间,我想计算两个连续行之间的时间。该日期表示此活动的开始日期。活动的数量并不重要,只是连续行之间的时间很重要,但是如果我的主键是Id_op和Heure_deb,您的解决方案是否有效?我认为解决方案是使用左连接,我不掌握这个好的做法是您应该有一个表的主键。如果不是比较所有您认为唯一的值。Thx但是如果我的主键是Id_op和Heure_deb,您的解决方案有效吗?我认为解决方案是使用左连接,我不掌握这个好的做法是您应该有一个表的主键。如果没有,请比较您认为唯一的所有值。
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