sqlserver删除重复的数据

时间:2022-11-08 21:27:50

分享链接:

http://blog.csdn.net/s630730701/article/details/52033018

http://blog.csdn.net/anya/article/details/6407280/

http://www.myexception.cn/sql-server/350450.html

http://blog.csdn.net/u012889638/article/details/46893855

http://bbs.csdn.net/topics/370190752

暂不直接说删除问题,先说明下sqlserver不支持多字段in。举个栗子:

select *

from vitae a
where (a.peopleId,a.seq)
    in (select peopleId,seq

    from vitae

     group by peopleId,seq

   having count(*) > 1)

这种在sqlserver中就会报语法错误。

解决方案:(1)

DELETE dbo.t_test

from dbo.t_test A

WHERE  A.b IN (select b

from dbo.t_test b group by b,c having COUNT(*)>1)

AND A.C IN (select c

from dbo.t_test b group by b,c having COUNT(*)>1)

and id not in(select MIN(id) from dbo.t_test  group by b,c having COUNT(1)>1)

注意使用这个语句当数据量很大或者字段很多的时候会运行不了,太浪费时间

解决方案(2)

DELETE A

--select A.*

FROM  dbo.t_test A ,dbo.t_test B

WHERE A.b=B.b AND A.c=B.c AND A.id !=B.id

and A.id NOT IN(select min(id) from dbo.t_test group by b,c)

我们写的 delete table where 和update table 都属于简写,全写应该是

delet A FROM TABLE A WEHRE

参考链接:http://blog.csdn.net/zyzlywq/article/details/6753648

注意delete 删除的表是紧跟在后面的表 A,在from中可以引入另一个表进行关联

我目前阶段最大的感受就是:版本问题,这真的很重要。再举个小栗子sqlserver不能使用limit

sqlserver删除重复的数据

sqlserver删除重复的数据

(3)使用distinct筛选出不重复的记录,保存,在删除原来的数据库。(这个我没试过,应该可以)

sqlserver删除重复的数据的更多相关文章

  1. SqlServer删除重复数据的方法

    方法一 declare @max integer,@id integer open cur_rows fetch cur_rows into @id,@max begin set rowcount @ ...

  2. 《SQLServer删除重复数据的方法》

    方法一: declare @max integer,@id integer open cur_rows fetch cur_rows into @id,@max begin set rowcount ...

  3. SQL:一句话删除重复的数据

    --构造原始数据 )) --插入数据 INSERT INTO #T (N)VALUES ('A') --方式一:一句话删除重复数据(无主键) --方式二:采用CTQ,with的写法删除 ;

  4. c++ 链表删除重复的数据

    //List.h #include <iostream> typedef int dataType; struct Node{ Node():data(),pNextNode(NULL){ ...

  5. SqlServer 删除重复记录

    在给一个客户上线的系统里发现有一张表里出现了重复的数据,结果通过排查代码发现确实业务逻辑有问题,在修改了代码后需要将为数据库里的重复数据删除 在CSDN上找到解决方案,对线上的数据库尽量不要执行删除操 ...

  6. ORACLE 删除重复的数据

    内容转自:https://www.cnblogs.com/zfox2017/p/7676237.html         查询及删除重复记录的SQL语句   1.查找表中多余的重复记录,重复记录是根据 ...

  7. sqlserver删除重复数据

    select identity(int,1,1) as autoID, * into #Tmp from [QYTS_QiYeCecdb]select min(autoID) as autoID in ...

  8. SQLServer一次性删除重复的数据

    delete from [GCPCore].[GCP.Product].[CityMall] where  AreaID in(select AreaID from [GCPCore].[GCP.Pr ...

  9. SQLServer删除重复行

    1.如果有ID字段,就是具有唯一性的字段 delect table where id not in ( select max(id) from table group by col1,col2,col ...

随机推荐

  1. 雾里看花般的迷茫--货运APP

    移动互联网正在改变我们的生活方式,各种手机APP充斥着人们的生活,物流行业也不例外.货运APP的出现,对于物流行业是一个提升的机会,也是迈向标准化和专业化的一个有效途径. 经过三十多年的发展,我国物流 ...

  2. 转载好文:如何进行基于情境数据的个性化EDM数据营销

    根据Adobe和DMA(Direct Marketing Association)的<实时营销洞察报告> (Real-Time Marketing Insights Study),77%的 ...

  3. Redis 设计与实现读书笔记一 Redis字符串

    1 Redis 是C语言实现的 2 C字符串是 /0 结束的字符数组 3 Redis具体的动态字符串实现 /* * 保存字符串对象的结构 */ struct sdshdr { // buf 中已占用空 ...

  4. &period;NET基础之自定义泛型

    在.NET中泛型使用非常频繁,在控制台应用程序中,默认的引入了System.Collection.Generics名称空间,其中就提供了我们经常使用的泛型:List<T>和Dictiona ...

  5. IIS ,未能加载文件或程序集&OpenCurlyDoubleQuote;System&period;Web&period;DataVisualization&comma; Version&equals;3&period;5&period;0&period;0&comma; Culture&equals;neutral&comma; PublicKeyToken&equals;31bf3856ad364e35”或它的某一个依赖项。系统找不到指定的文件。

    1.解决办法:安装MSChart.exe程序 图表控件,下载附件,以管理员身份运行安装.

  6. Java Web - HTML 常用标签

    1.HTML head, title, body 标签 其中 meta 中的keywords是为了快速的让搜索引擎找到 <html> <head> <title>这 ...

  7. viewport预备知识

    dpr === dppx dpr:device pixel ratio 设备像素比 dppx:Number of dots per px unit 每像素有多少点 . 1dppx = 96dpi dp ...

  8. 解决wxParse空格不解析的问题

    遇到的问题: 相似问题:https://blog.csdn.net/qq_41619741/article/details/85774865 http://html51.com/info-41786- ...

  9. 【Java基本功】一文读懂String及其包装类的实现原理

    String作为Java中最常用的引用类型,相对来说基本上都比较熟悉,无论在平时的编码过程中还是在笔试面试中,String都很受到青睐,然而,在使用String过程中,又有较多需要注意的细节之处. S ...

  10. 20165236实验一 Java开发环境的熟悉

    课程:Java       姓名:郭金涛      学号:20165236 实验日期:2018/04/01        指导老师:娄嘉鹏 实验名称:Java开发环境的熟悉 实验要求: 1. 建立“自 ...