我想在一個巨大的表上創建單一屬性的唯一指標,但也有duplicite值,因此我需要刪除重複。只有重複記錄可以被刪除。 phpmyadmin或mysql查詢中的最佳解決方案是做什麼的?
我想出的唯一解決方法是使select進入另一個表,但我更願意從原始表中刪除數據。
表看起來像這樣(我喜歡把唯一索引id
)
|id|...
+--+---
| 1|x
| 2|a <-- duplicity
| 2|b <-- duplicity
| 3|c
| 4|d
這將是最好的結果
|id|...
+--+---
| 1|x
| 2|a
| 3|c
| 4|d
這也是可以接受的結果
|id|...
+--+---
| 1|x
| 3|c
| 4|d
如果我沒有記錯,剛剛創造了'UNIQUE'指數將刪除重複。如果不是,只需創建一個臨時表,它將會'INSERT ... SELECT DISTINCT id ...' – Kermit
爲什麼'(2,a)'比'(2,b)'更可取? – eggyal
@eggyal:'2,a'不比'2,b'更可取,但其中一個必須去,我不在乎哪一個。 @njk:試圖創建唯一的索引結果的錯誤 –