查询删除重复数据,只保留一条记录:

1.根据单字段,查询表中该字段重复出现记录:

SELECT * FROM Table
WHERE Parameter IN
(SELECT Parameter FROM Table
GROUP BY Parameter HAVING COUNT(Parameter ) > 1)

分析:
SELECT Parameter FROM Table
GROUP BY Parameter HAVING COUNT(Parameter ) > 1
根据字段分组,查询出表中出现重复(字段数量>1)的字段集

-----------------------------华丽的分割线---------------------------------

2.根据单字段,删除表中该字段重复出现记录,保留最小主键ID

DELETE FROM Table
WHERE Parameter IN
(SELECT Parameter FROM Table
GROUP BY Parameter HAVING COUNT(Parameter) > 1)
AND ID NOT IN
(SELECT MIN(ID) FROM Table
GROUP BY Parameter HAVING COUNT(Parameter)>1)

-----------------------------华丽的分割线---------------------------------

3.根据多个字段查询表中重复的记录

SELECT * FROM Table a
WHERE EXISTS
(SELECT Para1 ,Para2 FROM Table b
WHERE a.Para1 = b.Para1 AND
a.Para1 = b.Para2 GROUP BY Para1 ,Para2
HAVING COUNT(*) > 1 )

-----------------------------华丽的分割线---------------------------------

4.根据多个字段 删除表中重复的记录,保留最小主键记录

DELETE A
FROM Table A ,
(SELECT Para1,Para2 FROM Table
GROUP BY Para1,Para2
HAVING COUNT(*) > 1 ) B
WHERE A.Para1=B.Para1 AND a.Para2= b.Para2
AND A.ID NOT IN (SELECT MIN(ID) AS ID
FROM Table
GROUP BY Para1,Para2
HAVING COUNT(*) > 1)

-----------------------------华丽的分割线---------------------------------

5.查询多个字段重复记录,不包含最小主键ID

SELECT * FROM Table a
WHERE EXISTS
(SELECT Para1,Para2 FROM Table b
WHERE a.Para1 = b.Para1 AND a. Para2 = b.Para2
GROUP BY Para1,Para2
HAVING COUNT(*) > 1)
AND ID NOT IN
(SELECT MIN(ID) FROM Table
GROUP BY Para1,Para2
HAVING COUNT(*)>1)

-----------------------------华丽的分割线---------------------------------
转:https://blog.csdn.net/xuejiaxingq/article/details/75104618

SQL SERVER 查询、删除重复数据相关推荐

  1. SQL Server中删除重复数据的2个方法

    要求: 用SQL语句实现删除一个表里面的重复数据,但要留下一条相同的数据. 思路: 需要两条,一条是进行重复数据标示,将重复数据中随机的一条标注为1其它的标注为0:然后还有一条语句删除所有的标注为1的 ...

  2. SQL Server中删除重复数据的几个方法

    数据库的使用过程中由于程序方面的问题有时候会碰到重复数据,重复数据导致了数据库部分设置不能正确设置-- 方法一 declare @max integer,@id integer declare cur ...

  3. sql server 2000 删除重复数据

    引用:http://zhidao.baidu.com/question/308051903.html select distinct * into # from Tab1 --过滤重复数据并生成临时表 ...

  4. 如何删除sql server中的重复数据

    如何删除sql server中的重复数据 先来看下有多少重复数据,伪代码如下: select count(重复字段)-count(distinct 重复字段) from 表名 执行这个SQL伪代码候就 ...

  5. sql server left join 重复数据原因图

    sql server left join 重复数据原因图     网购从这里开始 ( 物美价廉还等什么?!!! )

  6. mysql 查询删除重复数据,保留其中一条数据

    一.查询重复数据 --------根据多个字段查询重复数据 SELECT* FROMtable_name a WHERE(a.字段1, a.字段2) IN (SELECT字段1,字段2FROMtabl ...

  7. sql根据条件删除重复数据保留一条

    首先找到哪些数据是有重复记录的 over里是条件 select t.*,row_number() over(partition by t.ordercode,t.mobilephone,t.plate ...

  8. sql server:删除表数据,标识列Id从1开始

    今天是元宵节,楼猪认为在这么热闹和喜庆的日子里,不写上一篇惊世骇俗的大作,嗯,也没什么大不了的. 在sql server数据库上创建有自增列的数据表,每次删除表的数据后,自增主键都无法自动从1开始计数 ...

  9. mysql查询删除重复数据

    从一张表查询 数据 插入到另一张表 insert into tp_wxaccount(`appid`,`appsecret`,`name`,`num`,`time`,`state`,`uid`) se ...

  10. mysql删除重复数据只保留一条_【SQL】mysql删除重复数据只保留一条

    清洗数据的时候,发现有重复数据. 之前多用EXCEL处理数据,一键就可以delete了.这次因为数据量相对较大换了mysql. 按照百度搜到的一个高票代码,运行了半天都不对. 一直报错: 即按照mys ...

最新文章

  1. JDOM是JAVA中最常用的一种解析XML的工具
  2. mysql被格式化恢复数据_三种常见数据库文件恢复方法介绍
  3. Docker进阶-容器监控cAdvisor+InfluxDB+Granfana
  4. mysql 开启innodb win版本_MySQL安装与启动——Windows系统下
  5. Java多层翻页网络爬虫实战(以搜房网为例)
  6. 网络服务中常用的端口介绍
  7. 【树莓派搭建个人网站】花生壳内网穿透
  8. linux英文考试题,linux考试试题附答案
  9. 时代变迁,台湾的这个优势产业即将被中国大陆取代
  10. 【支付】中国银联作为收单机构的支付流程分析
  11. 软件测试之验收测试三要点
  12. Mybatis(一)Mybatis的基本使用
  13. java agent简介热部署SDK接入
  14. 寒冬季的建议:别麻木,别脱产,别放弃规划
  15. 海外跨境直播面临的难题及解决方案
  16. 一起智慧课堂_聚焦课堂,提升质量——六盘水市钟山区第一小学“智慧”课堂校际交流活动...
  17. byte buddy学习笔记
  18. 华为数通HCIA学习资料学习总结
  19. cee怎么把大图片放进小盒子_PS的实际应用:怎么给盒子制作包装图片
  20. android ksoap用法

热门文章

  1. php printer_open 用法_php控制标签打印机(斑马)
  2. 【接口篇 / Wan】(7.0) ❀ 05. 将 4G 作为备用宽带使用 ❀ FortiGate 防火墙
  3. c++学习纲要(入门必看!!!学习笔记【建议收藏!!!】)怒肝整理数万字,只求君一赞
  4. 用程序写入到TREEVIEW 怎样在aspx实现象ie收藏夹那样的功能
  5. IPHONE绑定武大邮箱的一些坑
  6. 读书笔记 - 智能体技术在城市交通信号控制系统中应用综述2014
  7. Android Process管理(进程管理) 详解
  8. 三国志战略版:Daniel_新晋减伤战法-奇计良谋
  9. 编译原理学习笔记(十九)~习题:将语句翻译为三地址代码
  10. 生于1999年的11家互联网公司:为何唯独阿里巴巴化茧成蝶?