我們在使用Sql server數據庫時,難免出現一些通過後臺導入的數據,導致數據表出現相同條件多條記錄,我們如何查找重複數據呢?
首先,我們來模擬出重複的數據,進行如下數據準備(由於是模擬的,數據不進行錄入太多)
--創建表結構 create table Teacher ( Id int identity(1,1) primary key, Code nvarchar(20), Name nvarchar(20), Age int ) --模擬重複數據 insert into Teacher(Code,Name,Age) values('T001','張老師',23); insert into Teacher(Code,Name,Age) values('T001','張老師',23); insert into Teacher(Code,Name,Age) values('T001','張老師',23); insert into Teacher(Code,Name,Age) values('T002','李老師',25); insert into Teacher(Code,Name,Age) values('T002','李老師',25); insert into Teacher(Code,Name,Age) values('T003','王老師',28); --查詢表數據 select * from Teacher;
我們可以看到表的數據,其中T001有3條數據,T002有2條
那麼我們查詢重複數據SQL可以按如下寫(編碼、名稱、年齡進行分組)
--查詢重複數據行的SQL(使用Having) select COUNT(*) as RepNum,Code,Name,Age from Teacher group by Code,Name,Age Having COUNT(*)>1;
可以看到最後結果,已經幫我們篩選出重複數據行了(其中RepNum:重複條數)