作者:徐涛 | 来源:互联网 | 2023-06-08 11:01
当重复记录是通过两个或更多字段判断时,可按下述方法处理:
USE [DBName]
DROP TABLE [#TmpTABLE]
DROP TABLE [#TmpTABLE2]
DROP TABLE [NEWTABLE]
SELECT IDENTITY(int, 1, 1) as [AutoID], * INTO [#TmpTABLE] FROM [ORGTABLE]
SELECT MIN([AutoID]) AS [AutoID] INTO [#TmpTABLE2] FROM [#TmpTABLE] GROUP BY [FIELD1], [FIELD2]… /*用于判断的字段列表*/
SELECT [FieldList] /*字段列表,不包括用于索引的AutoID*/ INTO [NEWTABLE] FROM [#TmpTABLE] WHERE [AutoID] IN (SELECT [AutoID] FROM [#TmpTABLE2])
EXEC sp_rename 'ORGTABLE', 'ORGTABLEBAK'
EXEC sp_rename 'NEWTABLE', 'ORGTABLE'