Amazon web services AWS红移-将列定义为条件列?

Amazon web services AWS红移-将列定义为条件列?,amazon-web-services,conditional,amazon-redshift,Amazon Web Services,Conditional,Amazon Redshift,是否可以通过条件表达式定义列?并在插入时对其进行评估/填充 例如: CREATE TABLE "time_of_year" ( "year" (smallint) ,"month" (smallint) ,"season" (conditional {case expression} ) ) ; 案例陈述将是: CASE "month" WHEN "month" in (12,1,2) THEN 'winter' WHEN "month" in (3,4,5) THEN

是否可以通过条件表达式定义列?并在插入时对其进行评估/填充

例如:

CREATE TABLE "time_of_year"
(
    "year" (smallint)
    ,"month" (smallint)
    ,"season" (conditional {case expression} )
)
;
案例陈述将是:

CASE "month"
WHEN "month" in (12,1,2) THEN 'winter'
WHEN "month" in (3,4,5) THEN 'spring'
WHEN "month" in (6,7,8) THEN 'summer'
ELSE 'fall'
END
如果记录插入年份=2016,月份=5,则季节将自行填充“春季”


这在Redshift中可能吗?

不,Redshift不支持任何类型的基于触发器的默认值-只能使用简单的默认值

我建议使用视图添加条件列