【发布时间】:2019-02-13 11:17:15
【问题描述】:
猜测这是直截了当的,但无法让它运行。我遇到的问题是在视图中明确设置列数据类型。
我需要这样做,因为我会将它合并到另一个表中,并且需要匹配该表的数据类型。
以下是我尝试运行的代码(我也尝试过不使用排序键但仍然无法运行)
DROP VIEW IF EXISTS testing.test_view;
CREATE OR REPLACE VIEW testing.test_view;
(
channel VARCHAR(80) ENCODE zstd,
trans_date TIMESTAMP ENCODE zstd
)
SORTKEY
(
trans_date
)
AS
SELECT channel,
trans_date
from (
SELECT to_date(date,'DD-MM-YYYY') as trans_date,channel
FROM testing.plan
group by date, channel
)
group by trans_date,channel;
我收到的错误消息:
执行 SQL 命令时出错:CREATE OR REPLACE 查看 trading.trading_squads_plan_v_test ( 通道 , trans_date )
作为
选择通道 VARCHAR(80) ENCODE zstd, trans_date TIM...
亚马逊无效操作:“VARCHAR”处或附近的语法错误 位置:106;
这是您无法设置数据类型的视图的问题吗?如果有,有什么解决方法吗?
谢谢
【问题讨论】:
-
表有数据类型和排序键,视图没有。
-
好的,我认为可能是这种情况,对很多列使用 0 占位符。我将使用一种解决方法。谢谢
标签: amazon-redshift