ある列に同じ値を持つ重複と見なされるレコードを削除し、最新のものとみなされるレコードを保持したい以下の私の例ではInsertedDateにあります。私は、カーソルを使用しないで、設定されているソリューションが欲しいです。目標:すべての重複を削除し、最新のものを維持する。列の同じ値に基づいて重複と見なされ、最新のものを保持するレコードを削除する
以下のddlはいくつかの重複を作成します。削除する必要があるレコードは、John1 & John2です。これは、John3と同じIDを持ち、John3が最新のレコードであるためです。
また、ID = 3の新しいレコード(John6)があるため、John5を削除する必要があります。
Create table dbo.TestTable (ID int, InsertedDate DateTime, Name varchar(50))
Insert into dbo.TestTable Select 1, '07/01/2009', 'John1'
Insert into dbo.TestTable Select 1, '07/02/2009', 'John2'
Insert into dbo.TestTable Select 1, '07/03/2009', 'John3'
Insert into dbo.TestTable Select 2, '07/03/2009', 'John4'
Insert into dbo.TestTable Select 3, '07/05/2009', 'John5'
Insert into dbo.TestTable Select 3, '07/06/2009', 'John6'
ありがとうございました。私は私の場合には結びつきません。 SQL Serverの新しい機能にはまだ精通していないので、私はあなたの答えを選びました。 –