您的位置 首页 > 数码极客

sql如何删除重复记录——sql删除重复记录保留一条

在使用数据库时,如何删除重复数据?

如图所示:用户表(user)数据


1、输入查询语句(查询name重复数据)

select * from user where name in (select name from user group by name having count(name) > 1)



查询后,可以看到name叫“张三”的有3条数据。


可以使用distinct去重(返回不重复的用户名)

select distinct name from user



查询后,name有三个名字(去重),分别是“张三”、“李四”、“王五”。


2、删除多余的重复记录(name),只保留id最小的记录。

delete from user where id not in ( select dt.id from ( select min(id) as id from user group by name ) dt)



查询表数据,可以看到name重复的数据已经删除。

公众号:AllTests软件测试

责任编辑: 鲁达

1.内容基于多重复合算法人工智能语言模型创作,旨在以深度学习研究为目的传播信息知识,内容观点与本网站无关,反馈举报请
2.仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证;
3.本站属于非营利性站点无毒无广告,请读者放心使用!

“sql如何删除重复记录,sql删除重复记录保留一条,sql删除重复记录命令,sql删除重复记录的函数”边界阅读