行业资讯

首页 > 新闻资讯 > 行业资讯 > sql语句查询表中重复数据(多类型)创新互联

sql语句查询表中重复数据(多类型)创新互联

2025-05-10 21:20:04   来源:   阅读:
表名:hztj

字段名:edxzqhdm ,sdxzqhdm

1.查出某一列数据中重复的,以sdxzqhdm为例

select * from hztj a where (a.sdxzqhdm) in (select sdxzqhdm from hztj group by sdxzqhdm having count(*) > 1)


2.查询出所有数据进行分组之后,和重复数据的重复次数的查询数据

select count(sdxzqhdm) as '重复次数',sdxzqhdm from hztj group by sdxzqhdm having count(*)>1 order by sdxzqhdm desc

查询及删除重复记录的方法

(1)查找表中多余的重复记录,重复记录是根据单个字段来判断 ,如:

select * from hztj

where sdxzqhdm in (select sdxzqhdm from hztj group by sdxzqhdm having count(sdxzqhdm) > 1)

(2)删除表中多余的重复记录,重复记录是根据单个字段来判断,只留rowid最小的记录

delete from hztj

where sdxzqhdm in (select sdxzqhdm from hzth group by sdxzqhdm having count(sdxzqhdm) > 1)
and rowid not in (select min(rowid) from hztj group by sdxzqhdm having count(sdxzqhdm)>1)

(3)查找表中多余的重复记录(多个字段)
select * from hztj a
where (a.sdxzqhdm,a.edxzqhdm) in (select sdxzqhdm,edxzqhdm from hztj group by sdxzqhdm,edxzqhdm having count(*) > 1)

(4)删除表中多余的重复记录(多个字段),只留有rowid最小的记录

delete from hztj a

where (a.sdxzqhdm,a.edxzqhdm) in (select sdxzqhdm,edxzqhdm from hztj group by sdxzqhdm,edxzqhdm having count(*) > 1)
and rowid not in (select min(rowid) from hztj group by sdxzqhdm,edxzqhdm having count(*)>1)

(5)查找表中多余的重复记录(多个字段),不包含rowid最小的记录
select * from hztj a
where (a.sdxzqhdm,a.edxzqhdm) in (select sdxzqhdm,edxzqhdm from hztj group by sdxzqhdm,edxzqhdm having count(*) > 1)
and rowid not in (select min(rowid) from hztj group by sdxzqhdm,edxzqhdm having count(*)>1)

本文《sql语句查询表中重复数据(多类型)创新互联》发布于君君营销文章,作者:admin,如若转载,请注明出处:/news/hyzx/76098.html,否则禁止转载,谢谢配合!

联系我们

18221295083
上海市浦东新区航头镇沪南公路4583号
上海市青浦区蟠龙路899号
18221295083
zhanglongfu@ijunjun.com
  • 联系我们
  • 关于我们
  • 二维码


    官方微信

    小程序
    返回
    顶部
    咨询

    扫描微信二维码,添加好友

    电话

    24小时电话:

    18221295083
    微信

    官方微信