列に基づいて重複するレコードを削除するために、しばらく前にこの質問をしました。答えはうまくいきました:
delete from tbl
where id NOT in
(
select min(id)
from tbl
group by sourceid
)
私は今、同じような状況にありますが、重複レコードの定義は複数の列に基づいています。上記のSQLを変更して、Col1 + Col2+Col3から連結されたものとして一意のレコードが定義されている重複レコードを識別するにはどうすればよいですか。私はこのようなことをするでしょうか?
delete from tbl
where id NOT in
(
select min(id)
from tbl
group by col1, col2, col3
)