行之间的 MySQL DateTime

标签 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    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/

相关文章:

python - 与 MySQL 一起使用的 SQLAlchemy 关系在与 Sql Server 一起使用时会产生错误

mysql - 我如何在 MySQL 中订购此 SELECT 语句?

javascript - 从 db 调用返回对象

php - 在 Codeigniter Framework 中插入(不执行)之前打印查询

mysql - 在获取结果中附加虚拟数据

php - Zend_Db_Table Select missing data,直接PHP查询ok

PHP 无法访问服务器上的数据库

mysql - 无法在 Linux 中启动 MySQL

mysql - 通过使用 join 语句的查询删除行

php - mysqli 查询 [事件记录 Codeigniter]