我有一个表,莫名其妙地被复制了。我基本上想删除所有重复的记录,这是由我表中名为SourceId的字段定义的。每个源ID只能有一个记录。
我是否可以编写任何删除所有重复项的SQL,以便每个Sourceid只有一条记录?
假设您具有可以打破重复的sourceid的列ID,则可以使用它。使用将min(id)导致它仅保留每个sourceid批次的min(id)。
min(id)
delete from tbl where id NOT in ( select min(id) from tbl group by sourceid )