我有一個數據庫,其中有來自gps發件人的很多行。 GPS有1秒的延遲發送下一行到數據庫。所以我想要做的是一個Web界面,顯示旅行,我不想顯示太多的行,我想分組的行旅行。所以我想要做的是查詢誰可以通過檢查它是否超過14分鐘到下一行來聲明旅行/旅行,如果它是在給它一個旅行號碼之前做出所有行的一行,否則將它添加到「旅行」收藏。按時間間隔劃分組的行
1
A
回答
2
試試這個(例如爲http://sqlfiddle.com/#!2/a0c86/39)
SELECT Trip, MIN(Date_Time), MAX(Date_Time)
FROM (
SELECT @Trip := IF(TIMESTAMPDIFF(MINUTE, @Date_Time, Date_Time) <= 20, @Trip, @Trip+1) AS TRIP
, logid
, @Date_Time := Date_time AS Date_Time
FROM gpslog
JOIN (SELECT @TRIP := 1, @Date_Time := null) AS tmp
ORDER BY Date_Time) AS triplist
GROUP BY Trip
+0
該死的男人,你太棒了!非常感謝@agrizzo –
+0
@AgRizzo,真棒解決方案。我在這裏遇到了類似的問題,你的查詢對我來說完美無缺。但是,請你解釋它是如何工作的嗎? –
+0
放手吧。我已經單獨運行了每個子查詢,並且知道它是如何工作的。無論如何,也許你可以爲未來找到答案的人添加詳細的解釋。 –
相關問題
- 1. 按時間間隔分組
- 2. 按時間間隔分組
- 3. 按任意時間間隔對日期時間進行分組
- 4. 按時間間隔對時間序列數據進行分組
- 5. 不按時間間隔分組SQL Server
- 6. 按時間間隔對分鐘進行分組
- 7. 按日曆時間間隔分組的時間段和ID
- 8. 按時間間隔對消息進行分組
- 9. 按時間間隔對查詢結果進行分組聚合
- 10. 如何按時間間隔進行特定分組?
- 11. 如何按時間間隔對結果進行分組?
- 12. Python - 時間加權平均熊貓,按時間間隔分組
- 13. 動態LINQ - 按時間間隔分組(日期時間,數字)
- 14. 按NHibernate QueryOver間隔分組
- 15. 獲取按時間間隔按月分組的累計和
- 16. 按月劃分時間戳
- 17. 按4小時間隔分組
- 18. 按30分鐘的時間間隔分組查詢
- 19. 按時間間隔排列的Teradata組
- 20. 按時間戳選擇組SQL按1分鐘間隔
- 21. 按日分組Unix時間戳產生不均勻間隔組
- 22. Oracle按分區劃分ID和按DATE分區間隔
- 23. 按時間間隔休眠組
- 24. 組數據按時間間隔
- 25. 按d3中的時間間隔分組日誌文件數據
- 26. SQL Server:按時間間隔分組的結果
- 27. 按日期分組的時間間隔(在d3.js中)
- 28. 按發生次數分組的時間間隔
- 29. 按時間間隔15分鐘的聚合組
- 30. Python:按時間間隔分組的結果
你可以加載樣本數據的sqlfiddle.com - 就像一個十幾行,代表一個3-4的旅行?示例表只需要具有logid和datetime字段。 – AgRizzo
現在你可以在quastion中看到@AgRizzo –