为了账号安全,请及时绑定邮箱和手机立即绑定

删除重复的行(不要删除所有重复的行)

删除重复的行(不要删除所有重复的行)

红颜莎娜 2019-11-02 14:12:43
我正在使用postgres。我想删除重复行。条件是,不会删除重复行集中的1个副本。即:如果有5条重复记录,则其中4条将被删除。
查看完整描述

3 回答

?
蓝山帝景

TA贡献1843条经验 获得超7个赞

请尝试本文所述的步骤:从PostgreSQL数据库中删除重复项。


它描述了一种情况,当您不得不处理无法处理的大量数据时group by。


一个简单的解决方案是:


DELETE FROM foo

       WHERE id NOT IN (SELECT min(id) --or max(id)

                        FROM foo

                        GROUP BY hash)

在哪里hash重复的东西。


查看完整回答
反对 回复 2019-11-02
?
GCT1015

TA贡献1827条经验 获得超4个赞

delete from table

where not id in 

(select max(id) from table group by [duplicate row])

这是随机(最大值)选择,您需要保留哪一行。如果您对此有疑问,请提供更多详细信息


查看完整回答
反对 回复 2019-11-02
  • 3 回答
  • 0 关注
  • 478 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信