我有id, item_id, value (int), run (datetime)
表和我需要選擇值差異之間的最後兩個運行每* item_id *。最後兩個記錄的日期時間的差異值
2
A
回答
3
SELECT item_id, ABS(value1 - value2) AS diff
FROM ( SELECT h.item_id, h.value AS value1, h2.value AS value2
FROM ( SELECT id, item_id, value
FROM table_name
GROUP BY item_id
ORDER BY run DESC) AS h
INNER JOIN ( SELECT id, item_id, value
FROM table_name
ORDER BY run DESC) AS h2
ON h.item_id = h2.item_id AND h.id != h2.id
GROUP BY item_id) AS h3
我相信這應該對你有用。只需將table_name
替換爲正確的名稱即可。
說明:
Basicly我加入表本身在run DESC
秩序的基礎上,ITEM_ID而且對ID加入他們的行列。然後,我再次GROUP BY他們以消除潛在的第三等案件。最後,我通過ABS計算它們之間的差異(value1 - value2)。
1
SELECT t2.id, t2.item_id, (t2.value- t1.value) valueDiff, t2.run
FROM (table_name AS t1
INNER JOIN
table_name AS t2
ON t1.run = (SELECT MAX(run) FROM table_name where run < t2.run)
and t1.item_id = t2.item_id)
這是假設你想記錄和記錄之間的差異與以前運行
相關問題
- 1. 在兩個日期(日期時間)之間的差異
- 2. 如何獲取兩個日期時間值之間的差異?
- 3. Grails - 兩個日期之間的差異
- 4. VB - 兩個日期之間的差異
- 5. 兩個日期之間的差異
- 6. Javascript - 兩個日期之間的差異
- 7. 兩個表之間的日期差異
- 8. 兩個日期之間的差異
- 9. 兩個日期之間的差異python
- 10. 兩個日期之間的Ruby差異
- 11. 兩個日期()之間的JavaScript差異
- 12. 兩個日期之間的oracle差異
- 13. 兩個日期之間的差異
- 14. 兩個日期之間的差異Yii2
- 15. 在兩個日期之間的差異
- 16. 兩個Java日期之間的差異?
- 17. 兩個日期之間的Android差異?
- 18. Java:兩個日期之間的差異
- 19. 兩個日期時間列之間的平均差異
- 20. 計算MySQL中兩個日期時間之間的差異
- 21. 尋找兩個時間戳與日期之間的差異
- 22. JScript:如何計算兩個日期時間之間的差異?
- 23. 找到兩個日期時間之間的微小差異
- 24. PHP找到兩個日期時間之間的差異
- 25. 計算MVC中兩個日期時間之間的差異5
- 26. 在javascript中找到兩個日期時間之間的差異
- 27. java中兩個日期之間的時間差異
- 28. 計算兩個記錄之間差異(時間)的總和 - mssql
- 29. 兩個日期之間的時差
- 30. SQL子查詢根據兩個日期之間的差異計算記錄數
列名*日期時間*不存在。你的意思是*運行*列嗎?抱歉,但我需要*值*(名稱)列不差*運行*列之間的差異。 – 2012-04-25 12:10:02
以這種方式使用GROUP BY時,你能指望它返回組的第一行嗎(其中「first」的概念來自子查詢中定義的順序?) – gcbenison 2012-04-25 12:12:09
棘手的一個......從來不知道MySQL中的ONLY_FULL_GROUP_BY http://bugs.mysql.com/bug.php?id=36511。如果這是MSSQL我會使用rownumber()(分區由..所以我真的不能抱怨使用平臺特定的東西 – gordatron 2012-04-25 12:20:24