sql delete duplicate rows

 SELECT *from user_info;

 

-- filter duplicate rows by single field

SELECT *from user_info WHERE NAME in ( SELECT NAME from user_info GROUP BY NAME HAVING COUNT(NAME)>1);

 

 -- 删除重复行,保留id最小的数据
SELECT *from user_info WHERE 
NAME in ( SELECT NAME from user_info GROUP BY NAME HAVING COUNT(NAME)>1)
AND id NOT in ( SELECT min(id) from user_info GROUP BY NAME HAVING COUNT(NAME)>1);

 -- Multi-field judgment repetition

SELECT * from user_info WHERE (name,school) in ( SELECT name,school from user_info group by name,school HAVING COUNT(*)>1);

 

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=324892014&siteId=291194637