总结:
两个意义上的重复记录,一是完全重复的记录,也即所有字段均重复的记录,二是部分关键字段重复的记录,比如Name字段重复,而其他字段不一定重复或都重复可以忽略。
1、(1)对于第一种重复,比较容易解决,使用复制代码代码如下:select distinct * from tableName
(2)如果该表需要删除重复的记录(重复记录保留1条),可以按以下方法删除,复制代码代码如下:
select distinct * into #Tmp from tableName
drop table tableName
select * into tableName from #Tmp
drop table #Tmp
2、假设有重复的字段为Name,Address,要求得到这两个字段唯一的结果集,复制代码代码如下:
select identity(int,1,1) as autoID, * into #Tmp from tableName
select min(autoID) as autoID into #Tmp2 from #Tmp group by Name,autoID
select * from #Tmp where autoID in(select autoID from #tmp2)
select 儿童姓名,Count(儿童姓名) from child group by 儿童姓名 having Count(儿童姓名) >1
要删除的话 可以这么操作,比如 只保留相同姓名中的ID最大的记录
则是
delete from child where id not in(select max(id) from child group by 儿童姓名)
select distinct 班级FROM 表名称