假设有 student 表一张, 有 id 、name 两个字段,name 一样即重复 。
一、查询是否有重复数据
SELECT name,count(*) from student GROUP BY `name` HAVING COUNT(*)>1;
二、删除重复数据
DELETE a
FROM
student a
JOIN (
SELECT
MIN(id) id, # 保留最小id的数据
NAME,
count(*)
FROM
student
GROUP BY
`name`
HAVING
COUNT(*) > 1
) b ON a. NAME = b. NAME
WHERE
a.id > b.id;
本文介绍如何使用SQL查询和删除数据库表中的重复记录。通过具体示例展示了查询重复数据的方法,并提供了一种有效的删除重复记录的解决方案。
956

被折叠的 条评论
为什么被折叠?



