sql删除重复项的问题

560C9290-A269-4FDB-9160-BE482B086C0D.png

这个表 怎么把全部一样的数据删掉一条?nums为100的这个

FineReport 子在川上曰 发布于 2023-4-27 09:47
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共4回答
最佳回答
0
浅吟小时光Lv4见习互助
发布于2023-4-27 09:51

对所有栏位使用DISTINCT去重,select distinct nums,name,class,adds from xx

  • 子在川上曰 子在川上曰(提问者) 这个只是查询 我想要直接从表中删除重复的,谢谢!
    2023-04-27 09:56 
  • 浅吟小时光 浅吟小时光 回复 子在川上曰(提问者) 简单点的方法,可以导出去重后的或者存到另一个表,清空再导入
    2023-04-27 10:06 
  • 浅吟小时光 浅吟小时光 回复 子在川上曰(提问者) 或者使用PostgreSQL中的Ctid,利用开窗函数给每行数据重复的赋递增值,最后可以根据ctid删除递增值大于1的
    2023-04-27 10:10 
最佳回答
0
Z4u3z1Lv6专家互助
发布于2023-4-27 09:49

SqlServer?oracle?mysql?

  • 子在川上曰 子在川上曰(提问者) postgresql
    2023-04-27 09:55 
  • Z4u3z1 Z4u3z1 回复 子在川上曰(提问者) 抱歉这个不会。如果是想从数据库中删除就度娘一下吧,如果只是查询的时候不显示就用楼下的方法
    2023-04-27 09:57 
  • 子在川上曰 子在川上曰(提问者) 回复 Z4u3z1 oracle或者mysql的你会吗?发一下参考也可以,谢谢
    2023-04-27 09:59 
  • Z4u3z1 Z4u3z1 回复 子在川上曰(提问者) https://blog.csdn.net/wimpykids/article/details/128845834 oracle的
    2023-04-27 10:07 
最佳回答
0
CD20160914Lv8专家互助
发布于2023-4-27 10:12

这里方法很多

在PostgresSQL中将重复值设置为空,保留其中一个值_三行代码 (sov5.cn)

还有在删除前自己拿数据验证一下,自己不熟悉的时候,不要随便在服务器上操作。。先备份一下,或者把非重复的备份走

参考这里

postgresql删除重复数据(完全一样)仅保留一条 - 百度文库 (baidu.com)

最佳回答
0
qiqits1984Lv6中级互助
发布于2023-4-27 10:20(编辑于 2023-4-27 10:23)

我的思路是 聚合查询  把ID合并查询到一起。

MySQL SELECT nums, `name`,class,adds,ROW_NUMBER() OVER(PARTITION BY `name`,class,adds ORDER BY `name`,class,adds) FROM test

加入分组序号,然后选择分组序号大于1的,全部删除 delete 删除这样ID的行

DELETE FROM 表名称 WHERE 列名称 in (查询结果)

 

  • 4关注人数
  • 414浏览人数
  • 最后回答于:2023-4-27 10:23
    请选择关闭问题的原因
    确定 取消
    返回顶部