SQLの頭を傷つける瞬間が少しあり、誰かが助けてくれるのだろうかと思っていました。 (例えば)は、このデータを使用して:SQLの最新リビジョンに基づいて重複を削除する
workId rateRevision
1 1
1 2
1 3
2 1
3 1
3 2
4 1
4 2
4 3
...私は基本的に最新のリビジョン(最高rateRevision値)を除くすべての重複を削除したいです。理論的には、それは本当に簡単に聞こえるが、私はSQLでそれを動作することはできません
workId rateRevision
1 3
2 1
3 2
4 3
:だから私は、で終わるだろう。ここに私の現在のコードです:
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()を使用すると、はっきりとはっきりしていたはずです。感謝! –