我有這樣的SQL:如何在使用GROUP BY時執行ORDER BY?
SELECT itemId, parentId, value FROM item ORDER BY value DESC
其正確返回:
+--------+------------------+
| itemId | parentId | value |
+--------+------------------+
| 1 | 5 | 500 |
| 4 | 1 | 500 |
| 2 | 5 | 10 |
| 5 | 1 | 10 |
| 3 | 5 | 0 |
| 6 | 1 | 0 |
+--------+----------+-------+
我嘗試添加 「GROUP BY的parentId」,但這似乎挑兩個隨機項目,忽略了ORDER BY子句:
+--------+------------------+
| itemId | parentId | value |
+--------+------------------+
| 2 | 5 | 10 |
| 6 | 1 | 0 |
+--------+----------+-------+
我應該使用什麼SQL來爲每個parentId的?:
最高值僅返回項目+--------+------------------+
| itemId | parentId | value |
+--------+------------------+
| 1 | 5 | 500 |
| 4 | 1 | 500 |
+--------+----------+-------+
選擇的itemId,parentId的,最大(值)VAL從項目組由parentId的順序由VAL遞減 – Reddy
這會給我結果如[itemId = 2,parentId = 5,value = 10,val = 500]。我需要返回與最高值相關的正確itemId,而不僅僅是最高值本身。 –