2012-04-16 40 views
0

的时间最小和最大值之间的区别我有一个MySQL数据库中的以下行:如何计算在一系列行的mysql中

Object1 2012-03-25 13:02:17   
Object2 2012-03-25 13:02:20   
Object3 2012-03-25 13:03:22   
Object1 2012-03-25 13:03:25   
Object4 2012-03-25 13:03:38   
Object1 2012-03-25 13:03:41   
Object5 2012-03-25 13:03:46   
Object4 2012-03-25 13:04:15   
Object6 2012-03-25 13:09:16   
Object1 2012-03-25 13:10:02   
Object4 2012-03-25 13:10:33   
Object3 2012-03-25 13:26:52   

我想计算的最早之间的时间差对象的时间和同一对象的最近时间。

例如,Object1的输出值大约为8秒。

我能用sql来完成这个吗?如果是这样如何?如果没有,如何?

感谢您的帮助。

回答

5

您可以参考MAX和MIN在任何这样的查询:

SELECT objectid, DATEDIFF(MAX(time),MIN(time)) as diff 
FROM objects 
GROUP BY objectid 
2
SELECT obj, MIN(otime) AS mn, MAX(otime) AS mx, DATEDIFF(MAX(otime),MIN(otime)) AS df 
FROM mytable 
GROUP BY obj 

应该这样做。您不需要mn和mx列,但我希望看到它们用于检查目的。

0
SELECT obj_name, MIN(obj_time) as min_time, MAX(obj_time) as max_time, 
TIMESTAMPDIFF(SECOND, MIN(obj_time),MAX(obj_time)) as diff_seconds 
FROM table1 
GROUP BY obj_name