1.Purchase表MySQL的 - 檢索最後一條記錄在每個分組
Id user pur_type
----------------------
1 408 5-12
2 408 5-12
3 222 1-11
4 222 5-12
5 408 1-11
6 408 1-11
2.產品表
Id parts days
-----------------
1 1-11 50
2 5-12 40
我實現這樣的查詢
SELECT p1.id, p1.user, p1.pur_type, g.parts, g.days
FROM purchase p1
INNER JOIN goods g ON p1.pur_type = g.parts
LEFT JOIN goods p2 ON (p1.pur_type= p2.pur_type
AND p1.id < p2.id)
WHERE p2.id IS NULL
結果是隻剩下最後記錄每個pur_type
Id user pur_type parts days
---------------------------------
4 222 5-12 5-12 40
6 408 1-11 1-11 50
如何獲得每個pur_type
的purchase
表中最後一條記錄,供一個特定用戶使用?
例如用於用戶408需要導致:
Id user parts days
-------------------------
2 408 5-12 40
6 408 1-11 50
結果的解釋:FOT part
5-12用戶408
最後的記錄是id
= 2
爲part
1-11用戶408最後一個記錄是id
= 6
當然'LEFT JOIN產品p2'應是'LEFT JOIN購買p2'嗎? – 2013-02-08 12:48:35
商品表中的ID列實際上是多餘的? – Strawberry 2013-02-08 12:49:03