0
同じコードと異なるステータスを持つ要素を削除する必要があるテーブルがあります。例えば、これは私のテーブルいくつかのコーディングに従って重複レコードを削除するクエリ
されています:
+-------------+------------+
| Code | Status |
+-------------+------------+
| 01 | 1 |
+-------------+------------+
| 02 | 1 |
+-------------+------------+
| 03 | 1 |
+-------------+------------+
| 01 | 2 |
+-------------+------------+
出力はこの1つのようにする必要があります:
+-------------+------------+
| Code | Status |
+-------------+------------+
| 02 | 1 |
+-------------+------------+
| 03 | 1 |
+-------------+------------+
それは私が最初ではステータス1と2を持っているコードを排除する必要があることを意味しますテーブルには、コード01に2つのステータス、ステータス1とステータス2があり、2つ目のテーブルにはもう表示されていないことがわかります。
これを行う方法は?元の表の重複がある場合
select t.*
from t
where not exists (select 1 from t t2 where t2.code = t.code and t2.status <> t.status);
、これは重複を返します。
そう単純で、おかげでたくさん。 – Josef