2019独角兽企业重金招聘Python工程师标准>>>
查询数据库表中重复的字段sql语句:
Select *,Count(*) From tableName Group By fieldName(字段名称) Having Count(*) > 1
删除重复记录其中的一条
delete from tableName where id IN(1,2,3)
这两条语句配合来使用,查询语句查询出来的结果可以这样:
Select id From sim Group By imsi Having Count(*) > 1
把结果集放入删除语句后就可以了,不过如果这样写会报错:
delete from sim where id IN(Select id From sim Group By imsi Having Count(*) > 1)
这样执行sql语句会报:[Err] 1093 - You can't specify target table 'sim' for update in FROM clause 这个错误,建议先在代码里执行查询语句,然后将结果集处理后,放入删除语句中执行,就能执行删除了
需要注意的是,每次只能删除一条记录哦,如果有2条以上重复记录,执行多次就行了!