【发布时间】:2016-09-15 16:54:49
【问题描述】:
我正在将 distkey/sortkey 添加到我在 redshift 中的所有表中,并希望自动执行此操作。我正在执行以下操作:
ALTER TABLE table RENAME TO tmp_table;
CREATE TABLE table
distkey(id)
sortkey(id)
AS
select * from tmp_table;
DROP TABLE tmp_table;
这很好用,只是视图不会被迁移。当您 ALTER TABLE 时,现有视图将指向 tmp_table。理想情况下,我想将视图恢复到以前的方式,可能在同一个查询事务中或作为脚本的一部分。
【问题讨论】:
-
请注意 CREATE TABLE .. AS 不保留 NOT NULL 设置。新表中的所有列都将创建为 NULL。另外我的猜测是不会保留列编码/压缩设置。
标签: amazon-redshift