0
我有類似表的東西之間:SQL刪除重複與較大的差別兩列
ID Value1 Value2
122 800 1600
122 800 1800
133 700 1500
154 800 1800
133 700 1500
188 700 1400
176 900 1500
從這個表我想刪除其具有值2有較大區別的重複(的122
ID
和133
)和value1。
這意味着在ID
是122
我想保持第一行(1800-800>1600-800
) 這意味着在ID
是133
我想保持任何一個,因爲它們都具有相同的差異。
ID Value1 Value2
122 800 1600
122 800 1800 <------delete this row
133 700 1500 <------delete either this row or the other identical row
154 800 1800
133 700 1500 <------delete either this row or the other identical row
188 700 1400
176 900 1500
這是一個更大的規模,所以我不能只是單獨刪除記錄。
有沒有辦法編寫一個語句,將刪除我的表中的所有重複項,其中Value2 - Value1
大於Value2 - Value1
重複?
您使用的數據庫是? SQL Server或MySQL。請適當地標記問題。 –
你可以用存儲過程做類似的事情...我認爲這是最好的方式恕我直言 – Hackerman
如果你的數據庫是MS SQL Server,你可以使用CTE。幫助我們通過用正確的數據庫標記您的問題來幫助您。 – Shiva