当前位置:网站首页>sqlserver删除重复数据
sqlserver删除重复数据
2022-08-04 12:29:00 【lyk_dtf】
前言
老是有些项目忘记加唯一索引,如果项目正常运行倒也没事,但是一旦高并发或者服务器带宽波动,极可能出现重复数据,需要手动删除一下
最主要的还是别懒!索引一定要加,索引能将查询速度直接提高100倍
1、表结构
CREATE TABLE [dbo].[met_treasure_hunt_box_rec](
[rec_id] [int] IDENTITY(1,1) NOT NULL,
[userCode] [nvarchar](20) NULL,
[box_type] [int] NULL
)
userCode,box_type两个字段需要加联合唯一索引,语法如下:
@>_<当初加上也没下面什么事了,
alter table 表名 add unique index 索引名(字段1,字段2,字段3)
2、删除重复数据
大概的意思:
通过userCode、box_type 进行分组,查询分组中数量大于2的记录的主键id,每次只取每个分组中的第一条,得到一个id数组,然后delete in 删除
这个sql每执行一次,就会删除每个重复分组中的第一条
注:如果不加 top 1000 会报错,因为子查询使用了group by 必须要指定返回行数,根据数据量定就行
select top 1000 (
select top 1 rec_id from met_treasure_hunt_box_rec b where a.userCode=b.userCode and a.box_type=b.box_type
) rec_id from met_treasure_hunt_box_rec a group by a.userCode,a.box_type having count(1)>1 order by count(1) desc
)
边栏推荐
猜你喜欢

分布式链路追踪Jaeger + 微服务Pig在Rainbond上的实践分享

来 TDengine 开发者大会,洞悉数据技术发展的未来趋势

yolo系列的Neck模块

Shell loop statement (for, while, until)

全面认识MOS管,一篇文章就够了

电源测试之输出动态响应(Output Dynamic Response Test)

论文翻译:2022_Time-Frequency Attention for Monaural Speech Enhancement

如何让 WPF 程序更好地适配 UI 自动化

#夏日挑战赛#OpenHarmony 给你的输入法加点彩—星球崛起

罗振宇的A股梦,咋这么难圆?
随机推荐
Oracle 19c 单实例 19.3.0 升级到19.11.0 详细教程
开发小程序插件如何实现盈利?
ES 节点2G内存分析
Focusing on data sources, data quality and model performance to build a credit profile of small and micro enterprises
动手学深度学习_LeNet
【UML】信息系统分析与设计知识点总结
Two years of independent development experience Programmers tell us the experience of making money (listen to the masters who really make money)
Flutter 使用 json_serializable 解析 JSON 支持泛型
小程序在政务服务平台建设中如何发挥价值
为什么密码云服务平台是云时代的必然之选?
MySQL必知必会(初级篇)
Neck modules of the yolo series
动规(18)-并查集基础题——团伙
“蔚来杯“2022牛客暑期多校训练营2 G、J、K
如何让 WPF 程序更好地适配 UI 自动化
String is a reference type
03 多线程与高并发 - ReentrantLock 源码解析
微信小程序使用腾讯云对象储存上传图片
DC/DC电感底部要不要覆铜?
Diffusion Models:生成扩散模型