gpt4 book ai didi

vertica - 删除 Vertica 数据库中的重复行

转载 作者:行者123 更新时间:2023-12-04 22:47:41 24 4
gpt4 key购买 nike

Vertica 允许将重复项插入到表中。我可以使用 'analyze_constraints' 函数查看那些。
如何从 Vertica 表中删除重复的行?

最佳答案

您应该尽量避免/限制对大量记录使用 DELETE。以下方法应该更有效:

步骤 1 创建一个与包含重复项的表具有相同结构/投影的新表:

create table mytable_new like mytable including projections ;

步骤 2 将重复数据删除的行插入到这个新表中:
insert /* +direct */ into mytable_new select <column list> from (
select * , row_number() over ( partition by <pk column list> ) as rownum from <table-name>
) a where a.rownum = 1 ;

步骤 3 重命名原始表(包含重复的表):
alter table mytable rename to mytable_orig ;

第 4 步 重命名新表:
alter table mytable_new rename to mytable ;

就这样。

关于vertica - 删除 Vertica 数据库中的重复行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17200239/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com