因此,我需要重複檢查一個複雜的對象,然後從所有關聯的表級聯刪除愚蠢,我想知道如果我可以在SQL Server中有效地做到這一點,或如果我應該在我的代碼中進行處理。在結構上,我有以下表格。檢查(和刪除)SQL Server中的複雜對象重複
- 權利要求
- ClaimCaseSubTypes(映射表多對多的關係)
- ClaimDiagnosticCodes(同上)
- ClaimTreatmentCodes(同上)
基本上是一個如權利要求是,只有當它是一個重複的匹配8個字段本身,並在所有映射表中具有相同的關係。
對於實施例,下面的記錄將被指示爲重複
Claim
Id CreateDate Other Fields
1 1/1/2015 matched
2 6/1/2015 matched
ClaimCaseSubTypes
ClaimId SubTypeId
1 34
1 64
2 34
2 64
ClaimDiagnosticCodes
ClaimId DiagnosticCodeId
1 1
2 1
ClaimTreatmentCodes
ClaimId TreatmentCodeId
1 5
1 6
2 6
2 5
在這種情況下我想保持1並從權利要求表以及與ClaimID的映射表的任何行刪除2 2
你有一個有趣的問題,但沒有問題。你想做什麼?獲取所有重複?獲取單個案例的重複內容?從數據庫中刪除重複的案例?只要有一個查詢返回非重複的情況? –
謝謝你的評論戈登。我編輯了這個問題。我想刪除重複項,只留下最早創建的記錄 –