SQLServer 删除表中的重复数据
1、根据name字段查询表中重复的数据
select name from T_table group by name having count(name) > 1
2、检查表中是否有主键或者唯一值的列,从数据看到id是唯一的,可以通过name分组排除掉id最大或最小的行
select max(id) from T_table group by name having count(name) > 1
重复数据和ID都查询出来了,那么就是写综合sql了
3. delete from T_table where name in
( select name from T_table group by name having count(name) > 1 )
and id not in
( select max(id) from T_table group by name having count(name) > 1 )