@TOC
前言
本系列記錄了一些mysql中常用場景中的sql,希望給大家?guī)韼椭?br> 本文帶來了刪除重復數(shù)據(jù),只保留一條
場景
很多時候,數(shù)據(jù)庫中存在相同條件的許多數(shù)據(jù),這時候需要刪除重復數(shù)據(jù),只保留一條數(shù)據(jù)。
數(shù)據(jù)

用戶信息
上圖展示了用戶信息,其中張三存在了三條,這時候想刪除重復的,只保留id最大的一個
SQL
DELETE FROM USER WHERE
id NOT IN ( SELECT * FROM (
SELECT MIN( id ) FROM `user` GROUP BY `name` ) AS USER )
結果

刪除完之后的結果
如圖可知,重復的的數(shù)據(jù)已經(jīng)刪除,保留了id最小的數(shù)據(jù)