查找所有重复标题的记录:

SELECT * FROM t_info a WHERE ((SELECT COUNT(*) FROM t_info WHERE Title = a.Title) > 1) ORDER BY Title DESC

查找重复记录

查找全部重复记录

Select * From 表 Where 重复字段 In (Select 重复字段 From 表 Group By 重复字段 Having Count(*)>1)

过滤重复记录(只显示一条)

Select * From HZT Where ID In (Select Max(ID) From HZT Group By Title)

注:此处显示ID最大一条记录

删除重复记录

删除全部重复记录(慎用)

Delete 表 Where 重复字段 In (Select 重复字段 From 表 Group By 重复字段 Having Count(*)>1)

保留一条(这个应该是大多数人所需要的 ^_^)

Delete HZT Where ID Not In (Select Max(ID) From HZT Group By Title)

注:此处保留ID最大一条记录

举例

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

select * from people where peopleId in (select peopleId from people group by peopleId having count(peopleId) > 1)

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

delete from people where peopleId in (select peopleId from people group by peopleId having count(peopleId) > 1) and rowid not in (select min(rowid) from people group by peopleId having count(peopleId )>1)

查找表中多余的重复记录(多个字段)

select * from vitae a where (a.peopleId,a.seq) in (select peopleId,seq from vitae group by peopleId,seq having count(*) > 1)

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

delete from vitae a where (a.peopleId,a.seq) in (select peopleId,seq from vitae group by peopleId,seq having count(*) > 1) and rowid not in (select min(rowid) from vitae group by peopleId,seq having count(*)>1)

查找表中多余的重复记录(多个字段),不包含rowid最小的记录

select * from vitae a where (a.peopleId,a.seq) in (select peopleId,seq from vitae group by peopleId,seq having count(*) > 1) and rowid not in (select min(rowid) from vitae group by peopleId,seq having count(*)>1)

补充

有两个以上的重复记录,一是完全重复的记录,也即所有字段均重复的记录,二是部分关键字段重复的记录,比如Name字段重复,而其他字段不一定重复或都重复可以忽略。

对于第一种重复,比较容易解决,使用

select distinct * from tableName

就可以得到无重复记录的结果集。

如果该表需要删除重复的记录(重复记录保留1条),可以按以下方法删除

select distinct * into #Tmp from tableName

drop table tableName

select * into tableName from #Tmp

drop table #Tmp

发生这种重复的原因是表设计不周产生的,增加唯一索引列即可解决。

这类重复问题通常要求保留重复记录中的第一条记录,操作方法如下

假设有重复的字段为Name,Address,要求得到这两个字段唯一的结果集

select identity(int,1,1) as autoID, * into #Tmp from tableName

select min(autoID) as autoID into #Tmp2 from #Tmp group by Name,autoID

select * from #Tmp where autoID in(select autoID from #tmp2)

原文:http://blog.csdn.net/l1028386804/article/details/51733585

来源:本文由思享SEO博客原创撰写,欢迎分享本文,转载请保留出处和链接!

分享:

mysql查询删除重复记录查询_mysql怎么查询和删除重复记录相关推荐

  1. mysql删除重复文章标题_MySQL中查询、删除重复记录的方法大全

    前言 本文主要给大家介绍了关于MySQL中查询.删除重复记录的方法,分享出来供大家参考学习,下面来看看详细的介绍: 查找所有重复标题的记录: 一.查找重复记录 1.查找全部重复记录 2.过滤重复记录( ...

  2. mysql删除重复的判断_MySQL中查询、删除重复记录一共有多少种方法?

    前言 本文主要给大家介绍了关于MySQL中查询.删除重复记录的方法,分享出来供大家参考学习,下面来看看详细的介绍: 查找所有重复标题的记录: select title,count(*) as coun ...

  3. mysql查询只能是等式连接_mysql连接查询

    14.1 实验目的 (1)掌握多表连接查询的常用方法 (2)了解外连接查询的方法 14.2 预备知识 1.多表连接查询的意义 很多情况下,我们要查询的结果无法从一张表中得到.例如要想知道"参 ...

  4. mysql慢查询日志分析工具比较_MySQL慢查询日志总结 日志分析工具mysqldumpslow

    慢查询日志概念 MySQL的慢查询日志是MySQL提供的一种日志记录,它用来记录在MySQL中响应时间超过阀值的语句,具体指运行时间超过long_query_time值的SQL,则会被记录到慢查询日志 ...

  5. mysql慢查询日志默认在哪里_MySQL 慢查询日志

    慢查询日志概念 MySQL 的慢查询日志是 MySQL 提供的一种日志记录,它用来记录在 MySQL 中查询响应时间超过阈值的语句,具体指响应时间超过 long_query_time 值的 SQL,会 ...

  6. mysql子查询分为几种方法_MYSQL子查询的5种形式

    mysql从4.1版开始支持子查询功能,在此版本前,可以用join写连表查询来进行替代,但不推荐这么写,相当麻烦,mysql子查询的几种常 见写法: 1.select * from xxx where ...

  7. mysql 删除不了数据_MySQL不建议delete删除数据

    InnoDB存储架构 从这张图可以看到,InnoDB存储结构主要包括两部分:逻辑存储结构和物理存储结构. 逻辑上是由表空间tablespace -> 段segment或者inode -> ...

  8. mysql 查询记录拼接_MYSQL 拼接查询结果记录

    MYSQL 拼接查询结果 拼接有concat,concat_ws,group_concat 这三个函数具体功能详见百度,这里不做赘述了.仅记录开发经验. concat(str,str1,str2,-) ...

  9. MySQL查询所有员工的邮箱_mysql数据库查询练习二-【比经理工资还高员工姓名】【查找重复的邮箱】...

    1.查询工资比他经理的工资还高的员工的姓名 Employee 表包含所有员工,他们的经理也属于员工.每个员工都有一个 Id,此外还有一列对应员工的经理的 Id. +----+-------+----- ...

  10. mysql查询最低工资的经历_MySQL 简单查询记录(二)

    #查询工资大于12000的员工 SELECT * FROM `employees` WHERE salary > 12000#查询部门编号不为90的员工姓名和部门 SELECT CONCAT(` ...

最新文章

  1. 「屋漏偏逢连夜雨」,Log4j 漏洞还没忙完,新的又来了
  2. linux高级数据存储
  3. android的五大布局(layout)
  4. oracle分页查询数据(收藏)
  5. 【数据结构与算法】之深入解析“合并两个有序数组”的求解思路与算法示例
  6. 0-1背包问题 题目:国王和金矿问题 描述:有一个国家发现了max_n座金矿,参与挖矿工人的总数是max_people人。每座金矿的黄金储量不同为一维数组gold[],需要参与挖掘的工人数也不同为一维
  7. SAP Fiori internationalization(国际化)实现的一些例子
  8. Vue+Element导入导出Excel
  9. Angular的@Output与@Input理解
  10. php-fpm 进程在云服务器cpu分配不均匀
  11. android 多数据图表,Android统计图表MPAndroidChart:为多条统计折线动态更新数据,以高温低温曲线为例【7】...
  12. 禁止特定IP访问Oracle数据库
  13. JSP自定义标签开发步骤
  14. 除了方文山,用TA你也能帮周杰伦写歌词了
  15. 服务器解析错误_常见的域名解析错误原因及应对方法
  16. godis之aof持久化
  17. 机器学习所需要的高数知识
  18. CUDA(19)之PTX优化原理
  19. 常见管理学原理、法则
  20. Apache服务(二)Apache服务的虚拟主机和内部访问控制

热门文章

  1. 如何实现div中的文字垂直水平居中
  2. 为生活,选条幸福的路
  3. 树形DP Python 洛谷P1352
  4. idea 代码提示忽略大小写
  5. 老子只要结果,别跟我说啥过程--咱们一起 骂 老板 1
  6. 好用的mac图片浏览工具有哪款?看这里
  7. 分析的六种中小企业网络营销方法
  8. Vuex状态管理模式-M
  9. fast admin包含图片的Excel导出
  10. Shell----Shell编程快速入门