WITH C1
AS
(
SELECT [MachineName]
,[EnvironmentID]
,[MachineFunction]
,[InsertDate]
,[APFlag]
,ROW_NUMBER() OVER(PARTITION BY [MachineName] ORDER BY [InsertDate]) AS RowNum
FROM [BingAdsMachines].[dbo].[MachineHistoryDistinct]
WHERE InsertDate > '2013-07-31'
)
DELETE *
FROM C1
WHERE RowNum > 1
笨方法:
INSERT INTO TEMP FROM SELECT DISTINCT * from TABLE
TRUNCATE TABLE [TABLE]
INSERT INTO TABLE FROM SELECT * FROM TEMP