在數據庫表里,我們有時候會保存了很多重復的數據,這些重復的數據浪費資源,我們要將其刪除掉,應該怎么處理呢?下面來看一下。
先看下我們的表數據,有一些數據是重復的。

要查找重復數據,我們可以使用mysql里的having語句,如圖。

執行這個語句后,我們可以看到現在的結果里顯示的就是表中重復數據的字段。

要刪除這些重復的數據,我們找出這些數據的ID,在select語句里,添加id字段,使用max函數,可以得到重復數據最后面的id。

執行結果如圖,得到重復數據的id為8和9。

這樣我們就可以使用delete語句來刪除這二個id的數據了。

但如果有很多重復的數據,不想一個一個的寫這些id怎么辦?
添加一個子查詢,只把id字段查詢出來,如圖。

然后在外邊添加一個delete語句就行了,詳細代碼如圖。
要注意的是,如果重復數據的行有三行或以上的,我們需要執行這個語句多次才行,因為執行一次只會刪除每組重復數據中的一條。

您可能感興趣的文章:- mysql刪除重復記錄語句的方法
- MySQL中查詢、刪除重復記錄的方法大全
- mysql查找刪除重復數據并只保留一條實例詳解
- MySQL 刪除數據庫中重復數據方法小結
- MySQL查詢重復數據(刪除重復數據保留id最小的一條為唯一數據)
- MySQL數據庫中刪除重復記錄的方法總結[推薦]
- mysql刪除表中某一字段重復的記錄
- shell腳本操作mysql數據庫刪除重復的數據
- mysql刪除重復行的實現方法
- mysql數據庫刪除重復數據只保留一條方法實例