這裏是我試圖解決的情況。我有一個加載了重複的表格。它發生的原因是類似的行從兩個或更多不同的來源加載。這在包裝中正在被照顧。
但我想刪除那些重複的行。這裏沒有關鍵屬性。來源的例子是Cleveland City
和Ohio State
。我有一列顯示從哪個源加載行(DataSource
列)。
因此在行中顯示爲DataSource = 'Cleveland'
或DataSource = 'Ohio'
。
我想保留那些從俄亥俄州加載時導致重複的記錄。它的100k條記錄我可能不得不使用連接。還有一件事,我的主桌與其他四個或五個桌子連在一起,每個桌子都有獨特的rId
,這就是爲什麼你看到我加入這張桌子,我不認爲我做得對。
你能檢查我的工作人員嗎?我真的欣賞它。
--Delete ct from--this is to delete w/c is my main intention
SELECT *
FROM
(
(
SELECT Rid,UID,ADDRESS,City,State,Zip,DataSource
FROM F_staRes where dataSource='Ohio'
) O inner join
(
SELECT Rid,UID,ADDRESS,City,State,Zip,DataSource
FROM F_staRes
where DataSource in ('Clev','Columbus')
) ct
on O.UID=ct.UID and O.ADDRESS=ct.ADDRESS and O.City=ct.City and
O.State=ct.State and O.zip=ct.zip
join dbo.ResOrig ro
on ct.rId=ro.rId
join dbo.ResSta rs
on ct.rId=rs.rId
join dbo.ResDest rd
on ct.rId=rd.rId
where ct.DataSource in ('Clev','Columbus')
你的問題可能會更好地遷移到[代碼審查 - 堆棧交易所(http://codereview.stackexchange.com/faq )用於共享您正在爲同行評審工作的項目的代碼。 – Tony