[英]Get time difference during a Grouped by query in MySQL
在我的 SQL 查詢期間,如何在第一行和最后一行之間獲得時間?
數據如下:
|--------|-----------|---------------------|
| EST_Id | EST_Token | EST_Datetime |
|--------|-----------|---------------------|
| 1 | vexef | 2020-10-17 16:13:01 |
| 2 | vexef | 2020-10-17 16:13:21 |
| 3 | vexef | 2020-10-17 16:14:31 |
| 4 | vexef | 2020-10-17 16:13:51 |
| 5 | fardd | 2020-10-17 17:00:11 |
| 6 | fardd | 2020-10-17 17:00:17 |
| 7 | fardd | 2020-10-17 17:00:19 |
|--------|-----------|---------------------|
例如對於令牌vexef
我應該有 50 秒。
這是我嘗試過的:
SELECT *, TIMEDIFF(MAX(EST_Datetime), MIN(EST_Datetime)) AS diff FROM table GROUP BY EST_Token ORDER BY EST_Id ASC
查詢看起來有效,但diff
返回我0
。
謝謝。
你似乎想要聚合:
select est_token, timestampdiff(second, min(est_datetime), max(est_datetime)) diff
from mytable
group by est_token
這為每個est_token
提供一行,最早和最新的est_datetime
之間的est_datetime
,以秒表示。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.