SQL Union全部为Null,与Redshift中一样

时间:2018-06-28 00:18:18

标签: sql amazon-redshift

在Microsoft SQL中,当UNION ALL时,如果第二个表没有table1的列,则可以使用NULL AS。

示例代码:

select a.Key, a.amount from tableA a 
UNION ALL
select b.key, NULL AS 'amount' from tableB b

但是如何在Amazon Redshift SQL中使用相同的NULL AS?

我在“'amount'”或附近出现语法错误

1 个答案:

答案 0 :(得分:2)

请勿对列别名使用单引号。

以下内容几乎适用于所有数据库(尽管可能需要转义key):

select a.Key, a.amount from tableA a 
union all
select b.key, NULL AS amount from tableB b;

实际上,第二个查询中不需要别名,因此您可以编写:

select a.Key, a.amount from tableA a 
union all
select b.key, NULL from tableB b;