操作的表名:insurance.tj_vs_price
操作步骤
一、重复记录根据单个字段来判断
1、首先,查找表中多余的重复记录,重复记录是根据单个字段(item_code )来判断
select * from insurance.tj_vs_price where item_code in(select item_code from insurance.tj_vs_price group by item_code having count(item_code ) >1)
2、删除表中多余的重复记录,重复记录是根据单个字段(item_code )来判断,只留有rowid最小的记录
delete from insurance.tj_vs_price where (item_code ) in (select item_code from insurance.tj_vs_price group by item_code having count(item_code ) >1) and rowid not in (select min(rowid) from insurance.tj_vs_price group by item_code having count(*)>1)
二、重复记录根据多个字段来判断
1、查找表中多余的重复记录(多个字段)
select * from insurance.tj_vs_price a where (a.item_code ,a.item_spec) in(select item_code ,item_spec from insurance.tj_vs_price group by item_code ,item_spechaving count(*) > 1)
2、删除表中多余的重复记录(多个字段),只留有rowid最小的记录
delete from insurance.tj_vs_price a where (a.item_code ,a.item_spec ) in (select item_code ,item_spec from insurance.tj_vs_pricegroup by item_code ,item_spechaving count(*) > 1) and rowid not in (select min(rowid) from insurance.tj_vs_pricegroup by item_code ,item_spec having count(*)>1)
3、查找表中多余的重复记录(多个字段),不包含rowid最小的记录
select * from insurance.tj_vs_price a where (a.item_code ,a.item_spec ) in (select item_code ,item_spec from insurance.tj_vs_price group by item_code ,item_spec having count(*) > 1) and rowid not in (select min(rowid) from insurance.tj_vs_price group by item_code ,item_spec having count(*)>1)