我正在使用一些SQL頭部劃痕,並且想知道是否有人可以提供幫助。使用這些數據(例如):根據SQL中的最新版本刪除重複項
workId rateRevision
1 1
1 2
1 3
2 1
3 1
3 2
4 1
4 2
4 3
...我基本上想刪除除最新版本(最高rateRevision值)以外的所有重複項。所以我最終會:
workId rateRevision
1 3
2 1
3 2
4 3
理論上它聽起來很簡單,但我不能在SQL中解決它。這裏是我當前的代碼:
SELECT * FROM rate r
WHERE r.rateRevision =
(select r.rateRevision from rate r ORDER BY r.rateRevision DESC LIMIT 1);
...但是,剛剛返回
workId rateRevision
4 3
當然,這只是在目前選擇的值,但我基本上打算只是扭轉它的刪除語句。有沒有人有任何想法?
非常感謝! 馬特
謝謝克里斯,完美的工作。使用max()應該是非常明顯的哈哈。不勝感激! –