数据库进阶:SQL Server数据库多种方式查找重复记录
SQL Server数据库多种方式查找重复记录:
示例 表stuinfo 有三个字段recno(自增) stuid stuname
建该表的Sql语句如下
CREATE TABLE [StuInfo] ( [recno] [int] IDENTITY ( ) NOT NULL [stuid] [varchar] ( ) COLLATE Chinese_PRC_CI_AS NOT NULL [stuname] [varchar] ( ) COLLATE Chinese_PRC_CI_AS NOT NULL ) ON [PRIMARY] GO
查某一列(或多列)的重复值(只可以查出重复记录的值 不能查出整个记录的信息)
例如:查找stuid stuname重复的记录
select stuid stuname from stuinfo group by stuid stuname having(count(*))>
查某一列有重复值的记录(此方法查出的是所有重复的记录 如果有两条记录重复的 就查出两条)
例如:查找stuid重复的记录
select * from stuinfo where stuid in ( select stuid from stuinfo group by stuid having(count(*))> )
查某一列有重复值的记录(只显示多余的记录 也就是说如果有三条记录重复的 就显示两条)
前提 需有一个不重复的列 此示例为recno
例如:查找stuid重复的记录
lishixinzhi/Article/program/SQLServer/201311/22365