mysql - 按行的时差

标签 mysql

我想获取多行之间的时间差

  Sl_id   ID     ShortLeave               createddate

    15    8     2015-10-02 13:10:07   2015-02-11 16:08:01
    16    8     2015-10-02 14:05:07   2015-02-11 16:08:01

我需要通过 where Id=1 获取短假差异过滤器。我试过了

SELECT  timediff(A.shortleave,B.shortleave) AS timedifference
FROM shortL A  JOIN shortL B ON B.id = A.id 
where A.Id=1
group by A.ID,A.ShortLeave ;

但我有两行

'00:00:00'
'00:55:00'

发生这种情况是因为Sl_id。所以请帮助我如何为多行只获取一行。

最佳答案

我改变了我的查询

SELECT  timediff(A.shortleave,B.shortleave) AS timedifference
FROM shortL A  JOIN shortL B ON B.id = A.id 
where A.Id=1
group by A.ID,A.ShortLeave order by timedifference desc limit 1;

通过这样做,我总是能得到最新的专栏。在此我只得到 '00:55:00' 结果,没关系。

关于mysql - 按行的时差,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28452450/

相关文章:

php - Mysql SELECT from 2 表

php - MySQL 将 FULLTEXT 与 LIKE Fallback 相结合

php - Javascript 和 Php 字符串的未捕获语法错误

php - 尝试新的文件上传方式

c# - MySQL C#,日期时间列的最后 x 分钟

mysql - collat​​ion_server 和默认字符集/排序规则 mysql 之间的区别

php - 如何解决 "SQLSTATE[42S22]: Column not found"?

mysql - 按 ID DESC 排序

mysql - 部分结果的等于运算符

Javascript从mysql计算小计和总计