天天看点

在MSSQL中查找出重复记录

--假如你表中只有一个关键字段。 可以用

SELECT Distinct T1.FID,T2.FCode,T2.FName FROM bbMaterialCode T1, bbMaterialCode T2

WHERE (T1.FCode=T2.FCode and T1.FName = T2.FName) AND T1.FID<>T2.FID

--可以查出bbMaterialCode中FCode和FName重复的记录

--假如你表中是组合关键字段。先建立一个临时表

IF (SELECT object_ID('tempdb.dbo.#Test'))>0 DROP TABLE #Test

CREATE TABLE #Test (

  [FID] [int] IDENTITY (1, 1) NOT NULL ,   --建立一个字段。自动编号

  [FCode] varchar(50) NULL,

  [FName] varchar(50) NULL

 ) ON [PRIMARY]

INSERT INTO #Test  --将所有插入到临时表

 SELECT FCode,FName FROM bbMaterialCode

SELECT Distinct T1.FID,T2.FCode,T2.FName FROM #Test T1,#Test T2

--也可以查出#Test (即bbMaterialCode)中FCode和FName重复的记录