sql查询技巧 查询一个表重复记录

一、查询重复记录

例:查询员工表里出现重复姓名的记录
思路: 1、查看重复记录,首先要使用分组函数(group by),再用聚合函数中的中的计数函数count(name)给姓名列计数,且使用group by 后不可使用*

2、查关键字:姓名,以姓名进行分组,看潜在条件:重复,也就是count(name)>1,使用having过滤条件,不可使用where(where子句无法与聚合函数count()一起使用)

方法1

点击查看代码
select employee_name,count(*) from employee group by employee_name having count(employee_name)>1

方法2

点击查看代码
select employee_name,count(*) as c from employee group by employee_name  having c>1

找出非重复记录

select distinct id employee_name from employee

删除数据

-- 通过insert into保留非重复数据,在delete性能较低时,数据量大时使用

1、创建临时表

2、将非重复数据插入临时表

核心思想
删除重复数据核心思想是找到唯一的数据,保留非重复数据或删除重复数据。可以通过主键、组合字段等可以找到唯一数据。

posted @ 2023-12-26 00:45  赏金猎人小熊  阅读(130)  评论(0编辑  收藏  举报