mysql

时间:2016-01-28 09:45:33

标签: mysql sql conditional-statements

我需要得到未知日期行数的时差之和。我可以使用

获得该列表的总和

SELECT SEC_TO_TIME(SUM(TIME(o.discontinued_date)))

但我需要得到时差的总和。例如,

2014-09-24 01:17:28
2014-09-24 01:17:41
2014-09-24 01:17:48

此列表的答案应为00:00:20

但在我的情况下,我不知道行数。我不知道我该怎么办才能得到差异的总和。请帮忙。对不起我的英语不好。如果您需要更多详情,请发表评论。 谢谢

1 个答案:

答案 0 :(得分:1)

如果我理解正确的话,你是否有2行或20行并不重要,因为你只是在最小和最大的时间内感兴趣。

所以你的查询应该很简单:

SELECT max(discontinued_date) - min(discontinued_date)
FROM YourTable;

如果你想为每个id / day做这件事,或者我不知道,你应该像这样使用group:(I.E。每天的总和)

SELECT discontinued_date,max(discontinued_date) - min(discontinued_date)
FROM YourTable
GROUP BY discontinued_date;