问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

sql没有主键删除重复数据只保留一条,如图 ;

发布网友 发布时间:2022-04-28 19:45

我来回答

4个回答

热心网友 时间:2022-04-11 00:09

1.先把数据表的去除重复的数据放到临时表中
select distinct * into #t from table --distinct 是sqlserver 里面用来去重的
2.把数据表里的数据清空
truncate table dbo.[table]
3.把临时表里的数据插入到数据表里
insert into table select * from #t
4.删除临时表
drop table #t

热心网友 时间:2022-04-11 01:27

应该把数据放到一个新表里面,别的我就不知道有什么方法了
代码如下:
select item, id..,distinct id_proct .... into new_table
from...

在重复的字段前面加个关键字 distinct
new_table是新表的表名,你随便写
你试试

热心网友 时间:2022-04-11 03:01

你说的这个情况,比较复杂。
没有主键,那么需要判断删除重复记录时,以什么为判断字段。
仅靠 select distinct * from table1 这样是不行的,因为id_depot字段和id_proct字段虽然唯一,但是其他字段(比如price字段)可不唯一啊,id_proct一样会有重复。

所以如果你要求严格的话,要把所有字段的重复可能性都考虑一下再处理。
如果仅对id_depot和id_proct这两个字段有要求的话,可以通过临时表来处理。
假设表名为table1,则
1、添加唯一序列号
select identity(int,1,1) as tempkey, * into temp1 from table 1
2、取出id_depot、id_proct唯一的最大序列号
select id_depot, id_proct, max(tempkey) as maxkey into temp2 from temp1
3、删除临时表多余数据
delete a from temp1 a where not exists (select 1 from temp2 b where a.tempkey=b.maxkey)
4、删除临时表序列号
alter table temp1 drop column tempkey
5、删除原表数据
truncate table table 1
或者delete from table1
6、插回唯一数据
insert table1 select * from temp1
7、删除临时表
drop table temp1, temp2追问id_depot不是唯一的是一个分类

追答对啊,就是取的 id_depot 加上 id_proct 唯一的所有记录啊,这两个字段同时进行判断

热心网友 时间:2022-04-11 04:53

;with cte as (select *,row_number() over(partitioin by id_depot,id_proct order by id_depot)rn from tb)
delete cte where rn>1
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
酶是生物催化剂对不对 Spring Boot + Mybatis多数据源和动态数据源配置 MyBatis-Plus介绍及Spring Boot 3集成指南 怎么样定闹钟 黑色兔毛马甲怎么搭配下装? 固态硬盘闪存颗粒也曾叫过什么呢? 电子数据存储相关(十二)聊聊固态硬盘SSD的相关术语 SLC、MLC、TLC、QL... 昨晚梦见和老公去水果批发市场上货,在路上老公捉了一只秃鹫拿回家养... 学历提升选择师大教育怎么样? 师大教育是正规教育机构吗 sql 中 如何去重复数据 两条完全重复的数据,删掉一条留一条? SQL删除重复数据,保留最近修改的一条记录。 如何用sql语句删除一个表中重复的数据(只保留一条) SQL中的如何把多条一样的记录删除只留一条 sql数据库 有多条记录完全重复,怎么删除重复记录,只保留一条,sql语句... sql 中 如何去重复数据 两条完全重复的数据,删掉一条留一条 sql如何删除TA表中重复行,只保留重复行的一行???急啊, 在SQL中一张表中有重复的几行,怎么删掉重复的,但是只保留一行! SQL Server 删除所有重复行数据,只保留一行记录,没有主键 为什么那么多企业要用ERP管理软件?有什么用吗? 槟榔有什么好处 哪些企业成功运用ERP系统 吃槟榔有什么好处,, 目前中国有哪些企业运用ERP系统?它们是如何运用的? 吃槟榔有什么好处 吃槟榔有啥好处啊 什么企业才会涉及到使用ERP系统? 吃槟榔有什么好处与坏处? ERP系统在全国运用在哪些企业 蒸气锅炉的分类 “奖状”用英语怎么说 奖状的单词怎么拼 英文的(奖状)怎么拼 奖状,用英文拼写 荣誉奖状英文怎么说? 奖状用粤语怎么说? 拼音奖状称号怎么写 关于(好医保-长期医疗)报销问题? 天津市肿瘤医院好医保长期医疗可以报销吗 好医保长期医疗剖腹产能报销吗 好医保能报销生孩子的费用么 小米5为什么无法在息屏状态下指纹解锁,必须要屏幕唤醒时才能指纹解锁? 小米10s屏下指纹息屏亮起 小米5 如何设置指纹点亮,也就是说 按指纹解锁不需要点亮屏幕! 小米12设置指纹亮度 小米6指纹需要亮屏吗 小米11息屏亮指纹 小米5黑屏状态下为什么指纹解锁没反应? 小米手机的那个开屏幕直接显示密码的设置在哪里? 小米8透明探索版指纹解锁需要亮屏吗