gpt4 book ai didi

postgresql - 在 Amazon Redshift 中追加和覆盖

转载 作者:行者123 更新时间:2023-11-29 11:31:36 25 4
gpt4 key购买 nike

由于 Redshift 基于 PostgreSQL,它是否可以选择在从 S3 复制到 Redshift 时覆盖或追加表中的数据?

我唯一得到的是触发器的使用,但它们不接受任何参数。

如果数据已经在表中,我只需要编写一个脚本,将参数作为是/否(或类似)。

最佳答案

当使用 COPY 命令将数据从 Amazon S3 加载到 Amazon Redshift 时,数据会附加到目标表。

Redshift 没有“覆盖”选项。如果您希望用正在加载的数据替换现有数据,您可以:

  • 将数据载入临时表
  • 删除主表中与传入数据匹配的行,例如:

    DELETE FROM main-table WHERE id IN (SELECT id from temp-table)

  • 将临时表中的行复制到主表中,eg:

    SELECT * FROM temp-table INTO main-table

参见:Updating and Inserting New Data

关于postgresql - 在 Amazon Redshift 中追加和覆盖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38456360/

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