六种SQL Server删除重复行的方法

摘要:
SQLServer删除重复行是我们最常见的操作之一,下面就为您介绍六种适合不同情况的SQLServer删除重复行的方法,供您参考。

SQL Server删除重复行是我们最常见的操作之一,下面就为您介绍六种适合不同情况的SQL Server删除重复行的方法,供您参考。

1.如果有ID字段,就是具有唯一性的字段

  1. delecttablewhereidnotin(
  2. selectmax(id)fromtablegroupbycol1,col2,col3...
  3. )

group by 子句后跟的字段就是你用来判断重复的条件,如只有col1,那么只要col1字段内容相同即表示记录相同。

2. 如果是判断所有字段也可以这样

  1. select*into#aafromtablegroupbyid1,id2,....
  2. deletetable
  3. insertintotable
  4. select*from#aa

3. 没有ID的情况

  1. selectidentity(int,1,1)asid,*into#tempfromtabel
  2. delect#whereidnotin(
  3. selectmax(id)from#groupbycol1,col2,col3...)
  4. delecttable
  5. insetintotable(...)
  6. select.....from#temp

4. col1+','+col2+','...col5 联合主键

  1. select*fromtablewherecol1+','+col2+','...col5in(
  2. selectmax(col1+','+col2+','...col5)fromtable
  3. wherehavingcount(*)>1
  4. groupbycol1,col2,col3,col4
  5. )

group by 子句后跟的字段就是你用来判断重复的条件,如只有col1,那么只要col1字段内容相同即表示记录相同。

5.

  1. selectidentity(int,1,1)asid,*into#tempfromtabel
  2. select*from#tempwhereidin(
  3. selectmax(id)from#empwherehavingcount(*)>1groupbycol1,col2,col3...)

6.

  1. selectdistinct*into#tempfromtablename
  2. deletetablename
  3. go
  4. inserttablenameselect*from#tempSqlclub
  5. go
  6. droptable#temp

以上就是SQL Server删除重复行的方法介绍

免责声明:文章转载自《六种SQL Server删除重复行的方法》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇BIRT新建项目微信申请 包名和签名下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

随便看看

Element-ui局部添加loading效果

Vue+element ui在加载表数据元素加载微调器=“el icon loading”时在测试过程中遇到问题:constloading=this$loading({lock://is与修改器相同text://ofv-loading图标目标:...

微信小程序使用weui构建搜索栏(searchbar)+导航(navbar)

首先需要在lib目录中添加weui.wxss。searchbar和navbar结合主要解决两者的层次问题,即搜索框输入时,下方的检索结果能够覆盖住navbar。下面就开始发码啦:wxml部分:0}}"bindtap="clearInput"˃搜索˂viewclass="weui-search-bar__cancel-btn"hidden="{{!...

codeforces 765 F Souvenirs 线段树+set

问题的含义:多个查询的间隔中两个数字之差的绝对值的最小值:可以根据查询的l对脱机查询进行排序,并且可以从r到l进行反向查询,并且间隔i+1到n的每次更新都可以确保此更新不会影响下一次和后续更新。因为当两个区间相互覆盖时,具有较小l的区间的值必须小于或等于另一个区间,因此可以绘制一个图来理解。...

Qt 调用本地浏览器打开URL

单击一些Qt控件以查找本地浏览器传递的URL以打开前端。...

HTTP请求报文

不仅报表样式可以传递请求参数,请求url也可以以类似于键值对的方式传递数据...

C#基础系列过滤器与特性

过滤器和特性结合在一起,在方法上优雅地使用过滤器。3.在过滤器中,。NETFrameWork提供了两种类型:一种是提供给ASP的筛选器。NETMVC在命名空间下使用System.Web。另一个是提供给ASP的过滤器。NETWebApi在命名空间下使用System.Web.Http.Filters。这两种类型不能混合使用,否则无法拦截并生效。...