对于重复行删除的问题,网上很难找到合适的答案,问问题的不少,但在搜索引擎中草草地看了一下前面的记录都没有解决方案。
其实这个问题可以很华丽的解决。
1、如果这张表没有主键(或者相同的行并没有不相同的内容列),则需要新建一个自增列,用来区分不同列。例如
复制代码 代码如下:
alter table [tablename] add [TID] int IDENTITY(1,1)
就是增加一个自增量的临时列TID。
为啥要用SQL语句?如果超过几十万行的话用SQL SERVER企业管理器的设计界面修改通常会超时。
2、然后就是关键了。给个例子就是我手上正要处理的IP地址所在地清单。近40万条数据,有SIP和EIP(开始IP和结束IP)记录重复,重复条数大概占1/5左右。对此情况用简单的一条SQL命令就搞定:
复制代码 代码如下:
delete from query_IP where TID not in (select max(TID) from query_IP group by SIP,EIP)
就是将SIP和EIP分组,取得同样分组的最大的TID值。然后将原表中不在其中的内容(也就是同样分组的重复内容中更小的ID内容)删除即可。
用这种思路可以延伸出很多SQL解题的方式。比如说某个用户登陆表,要查看每个用户最近的登陆记录。
很优雅的一条查询语句:
复制代码 代码如下:
Select * from LoginLog where ID in (select max(ID) from LoginLog group by UserID)
SQL强大之极,许多复杂的需求往往可以合并到一条SQL语句查询中实现。因此在我的程序中除了UPDATE/INSERT等操作需要事务支持,或是记录量实在太大需要分页或临时表。通常都用一条SQL语句来实现。比如说select *,(select count(*) from xxx where xxx=t.ID) from t where...。这样就可以在SELECT语句中获取关联的统计项,对于中小型系统尤其实用。
其实这个问题可以很华丽的解决。
1、如果这张表没有主键(或者相同的行并没有不相同的内容列),则需要新建一个自增列,用来区分不同列。例如
复制代码 代码如下:
alter table [tablename] add [TID] int IDENTITY(1,1)
就是增加一个自增量的临时列TID。
为啥要用SQL语句?如果超过几十万行的话用SQL SERVER企业管理器的设计界面修改通常会超时。
2、然后就是关键了。给个例子就是我手上正要处理的IP地址所在地清单。近40万条数据,有SIP和EIP(开始IP和结束IP)记录重复,重复条数大概占1/5左右。对此情况用简单的一条SQL命令就搞定:
复制代码 代码如下:
delete from query_IP where TID not in (select max(TID) from query_IP group by SIP,EIP)
就是将SIP和EIP分组,取得同样分组的最大的TID值。然后将原表中不在其中的内容(也就是同样分组的重复内容中更小的ID内容)删除即可。
用这种思路可以延伸出很多SQL解题的方式。比如说某个用户登陆表,要查看每个用户最近的登陆记录。
很优雅的一条查询语句:
复制代码 代码如下:
Select * from LoginLog where ID in (select max(ID) from LoginLog group by UserID)
SQL强大之极,许多复杂的需求往往可以合并到一条SQL语句查询中实现。因此在我的程序中除了UPDATE/INSERT等操作需要事务支持,或是记录量实在太大需要分页或临时表。通常都用一条SQL语句来实现。比如说select *,(select count(*) from xxx where xxx=t.ID) from t where...。这样就可以在SELECT语句中获取关联的统计项,对于中小型系统尤其实用。
标签:
SQL,SERVER,重复内容行
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件!
如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
白云城资源网 Copyright www.dyhadc.com
暂无“SQL SERVER 删除重复内容行”评论...
更新日志
2024年11月06日
2024年11月06日
- 雨林唱片《赏》新曲+精选集SACD版[ISO][2.3G]
- 罗大佑与OK男女合唱团.1995-再会吧!素兰【音乐工厂】【WAV+CUE】
- 草蜢.1993-宝贝对不起(国)【宝丽金】【WAV+CUE】
- 杨培安.2009-抒·情(EP)【擎天娱乐】【WAV+CUE】
- 周慧敏《EndlessDream》[WAV+CUE]
- 彭芳《纯色角3》2007[WAV+CUE]
- 江志丰2008-今生为你[豪记][WAV+CUE]
- 罗大佑1994《恋曲2000》音乐工厂[WAV+CUE][1G]
- 群星《一首歌一个故事》赵英俊某些作品重唱企划[FLAC分轨][1G]
- 群星《网易云英文歌曲播放量TOP100》[MP3][1G]
- 方大同.2024-梦想家TheDreamer【赋音乐】【FLAC分轨】
- 李慧珍.2007-爱死了【华谊兄弟】【WAV+CUE】
- 王大文.2019-国际太空站【环球】【FLAC分轨】
- 群星《2022超好听的十倍音质网络歌曲(163)》U盘音乐[WAV分轨][1.1G]
- 童丽《啼笑姻缘》头版限量编号24K金碟[低速原抓WAV+CUE][1.1G]