mysql删除重复记录只保留一条
温馨提示:
本文最后更新于 2017年09月19日,已超过 2,577 天没有更新。若文章内的图片失效(无法正常加载),请留言反馈或直接联系我。
查询出所有重复记录
select 字段名,字段名
from 表名
where 重复字段名 in (select 重复字段名 from 表名 group by 重复字段名 having count(1) >= 2) ORDER BY 重复字段名
查询出所有重复记录并且删除多余的只保留一条
delete from 表名
where
重复字段名 in (
SELECT a.重复字段名from(
select 重复字段名
from 表名
group by 重复字段名 having count(1) > 1
) a
)
and
id(只保留id最小的一个) not in (
SELECT b.id from(
select min(id) as id
from 表名
group by 重复字段名 having count(1)>1
) b
)
正文到此结束
- 本文标签: 数据库
- 本文链接: https://www.php20.cn/article/91
- 版权声明: 本文由仙士可原创发布,转载请遵循《署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)》许可协议授权