1条回答
默认
最新
回答交流
提交
问题信息
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~
墨值悬赏
PG删除重复数据有啥好方法没,表没主键
1种: 利用ctid 进行;
1步:
create tablet test(id int,name varchar);
insert into test values (1,‘a’);
insert into test values (1,‘a’);
insert into test values (2,‘b’);
insert into test values (2,‘b’);
2步:
delete from test a
where a.ctid = any(array (select ctid from (select row_number() over (partition by id), ctid from test) t where t.row_number > 1));
2种: 新建一张表,将不重复的记录写入新表,然后重命名完成;
A、特别适合需要删除的数量很大,保留的数量很小的场景;
评论
有用 0
墨值悬赏