天天看點

mysql資料庫去重複

參考:http://www.cnblogs.com/duanjie/archive/2011/08/13/2136862.html

說到去重複,感覺邏輯很簡單。但動手寫起來卻并不是那麼容易。面試的時候讓寫sql語句,然後沒完整的寫出來,然後面試官說你這沒結果啊!

去重複首先要把要留下的選出來,然後删除其他重複項。distinct雖然好用,但規則不明顯。這裡采用:select max(id) from user group by 重複依據。

1.取出要留下的資料,本次依據重複項的最大id為保留項。

2.放入臨時表

3.清空原表并從臨時表注入

當然也可以直接delete:

  

唯有不斷學習方能改變!

-- <b>Ryan Miao</b>