如何在一次查询中找到类似MySQL的数据库中2次之间的差异

如何在一次查询中找到类似MySQL的数据库中2次之间的差异,mysql,Mysql,我有一个具有以下架构的表: +------------------+ |Field | Type | +------------------+ | id | char(30) | | time | datetime | +------------------+ id列不是主键,因此,该表包含以下条目: 10, 2010-05-05 20:01:01 10, 2010-05-05 20:01:05 13, 2010-05-05 20:04:01 10, 2010-05-05 2

我有一个具有以下架构的表:

+------------------+
|Field  | Type     |
+------------------+
| id    | char(30) |
| time  | datetime |
+------------------+
id列不是主键,因此,该表包含以下条目:

10, 2010-05-05 20:01:01
10, 2010-05-05 20:01:05
13, 2010-05-05 20:04:01
10, 2010-05-05 20:04:10
13, 2010-05-05 20:05:03
10, 2010-05-05 20:05:28
我想找出给定id的时间差,即预期结果为:

10, 00:04:27
13, 00:01:02
我可以使用MySQL中的以下查询来实现这一点:

SELECT t2.id, TIMEDIFF(t2.max, t2.min) AS visit_length FROM
(
  SELECT id, MAX(time) AS max, MIN(time) AS min FROM page_view 
  GROUP BY id
) AS t2
但是,我使用的引擎是一个不支持子查询的MySQL派生引擎

是否有任何方法可以在不使用子查询的情况下通过单个查询获得相同的结果

谢谢这行吗

SELECT TIMEDIFF(MAX(time), MIN(TIME)) AS visit_length
FROM page_view
GROUP BY(id)
SELECT TIMEDIFF(MAX(time), MIN(TIME)) AS visit_length
FROM page_view
GROUP BY(id)