我正在使用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重复的东西。
GCT1015
TA贡献1827条经验 获得超4个赞
delete from table
where not id in
(select max(id) from table group by [duplicate row])
这是随机(最大值)选择,您需要保留哪一行。如果您对此有疑问,请提供更多详细信息
- 3 回答
- 0 关注
- 478 浏览
添加回答
举报
0/150
提交
取消