**SQL某一表中重复某一字段重复记录查询与处理-阿里云开发者社区

开发者社区> suboysugar> 正文

**SQL某一表中重复某一字段重复记录查询与处理

简介: sql某一表中重复某一字段重复记录查询与处理   1.查询出重复记录  select 重复记录字段 form  数据表 group by houseno having count(重复记录字段)>1 2.
+关注继续查看
  • sql某一表中重复某一字段重复记录查询与处理
  •  
    • 1.查询出重复记录
       
       select 重复记录字段 form  数据表 group by houseno having count(重复记录字段)>1


      2.重复记录只显示一条ID值最小或最大的记录

       select   id,* from   数据表 where houseno (select 重复记录字段 form 数据表 group by 重复记录

      字段 having count(重复记录字段)>1 )


      这样把houseno重复的的ID值全部显示出,那么我们如何只显示一条id最小或最大的记录呢?

      关键是在上面sql的where子句中select 重复记录字段 form 数据表 group by 重复记录字段 having count(

      重复记录字段)>1
      修改为
      select min(id) form 数据表 group by 重复记录字段 having count(重复记录字段)>1

      这样就查询重复记录字段中ID最小值

      那么上面的语句就是

        select   id,* from   数据表 where houseno (select min(id) form 数据表 group by 重复记录字段

      having count(重复记录字段)>1 )


      3.至于对重复记录执行delete update 就非常简单啦

        例如只保留最小id的一条
         
         delete 数据表 where id in (select max(id ) from 数据包 group by 重复记录字段 having count(重

      复记录字段)>1)
       
       
       update 操作不说啦都一样。


      4.group by  字段 having count与distinct的区别

      distct查询显示全部字段值都是一样的唯一,一条记录

       例如
      id     name   sex
      43 111 1
      44 111 1
      45 111 2
      46 222 2
      47 222 2
      48 333 1
      49 333 1

      SELECT distinct
            [name]
            ,[sex]
        FROM [database].[dbo].[a]

      要想实现上面的要去掉 sex字段 改成

      SELECT distinct
            [name]
           
        FROM [database].[dbo].[a]


      但要想取得重复ID最小值不建议用distinct。
      总结:


       对于重复记录关键是查出 :采用group by 字段 having count(字段)>1 
       取得最小id的一条(很关键) :采用min(id)

如何联系我:【万里虎】www.bravetiger.cn 【QQ】3396726884 (咨询问题100元起,帮助解决问题500元起) 【博客】http://www.cnblogs.com/kenshinobiy/

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
OceanBase数据库漫谈
从开发视角、运维视角、数据拆分漫谈OceanBase
22 0
node+mysql+express接口开发数据库连接池
node+mysql+express接口开发数据库连接池
18 0
node+express controller
Node + Express Controller
14 0
工商银行实时大数据平台建设历程及展望
中国工商银行大数据平台负责人袁一在 FFA 2021 的分享
29 0
Node + Express + MySQL 接口开发完整案例
Node + Express + MySQL 接口开发完整案例
20 0
SQL必知必会(一)
对于我们而言,数据库是一个以某种有组织的方式存储的数据集合。最简单的办法就是将数据库想象成一个文件柜。这个文件柜是一个存放数据的物理位置,不管数据是什么,也不管数据是如何组织的。 数据库(DataBase) 保存有组织数据的容器(通常为一个或一组文件)
23 0
SQL必知必会(二)
表中的数据都是按行来存储的,所保存的每个记录存储在自己的行内。如果将表想象为网格,网格中垂直的列为表列,水平行为表行。
19 0
SQL必知必会(三)
作用是从一个或多个表中检索信息
18 0
查询MySQL字段注释的 5 种方法!(5)
查询MySQL字段注释的 5 种方法!(5)
36 0
查询MySQL字段注释的 5 种方法!(3)
查询MySQL字段注释的 5 种方法!(3)
32 0
+关注
suboysugar
目前为自由职业者,从事BA业务分析和互联网产品设计等工作,本人先后在中关村在线、中国工商银行和神州数码工作。拥有互联网,移动互联网,软件公司等开发经历。计算机本科毕业,8年互联网和软件行业经验。
710
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载