私はしばらくこれに頭を悩ませてきましたが、どこにも速くはありません。データは行レベルのままでなければなりません。
一番早く到着したデータを保持したいので、重複は有効です。Load1 はバッチ ID を表します。すべての値が重複しているわけではありません
返したいもの
Code1 Code2 Code3 Load1 LoadTime
a1 a1 a1 1 2013-09-10
a1 a1 a1 1 2013-09-10
a1 a1 a1 1 2013-09-10
a2 a1 a1 2 2013-09-12
a1 a2 a1 3 2013-09-13
a1 a2 a1 3 2013-09-13
助言がありますか?
CREATE TABLE #Test (
Code1 varchar(10),
Code2 varchar(10),
Code3 varchar(10),
Load1 varchar(10),
LoadTime DATE
)
INSERT INTO #Test
VALUES ('a1','a1','a1','1','2013-09-10') --Keep
INSERT INTO #Test
VALUES ('a1','a1','a1','1','2013-09-10') --Keep
INSERT INTO #Test
VALUES ('a1','a1','a1','1','2013-09-10') --Keep
INSERT INTO #Test
VALUES ('a1','a1','a1','2','2013-09-11') --Delete
INSERT INTO #Test
VALUES ('a2','a1','a1','2','2013-09-12') --Keep
INSERT INTO #Test
VALUES ('a2','a1','a1','3','2013-09-13') --Delete
INSERT INTO #Test
VALUES ('a1','a2','a1','3','2013-09-13') --Keep
INSERT INTO #Test
VALUES ('a1','a2','a1','3','2013-09-13') --Keep
INSERT INTO #Test
VALUES ('a1','a2','a1','4','2013-09-13')-- Delete
INSERT INTO #Test
VALUES ('a1','a2','a1','4','2013-09-13')-- Delete