如何使用我刚刚创建的列在 Impala 中创建另一个列?
How do I use columns I just created to create another column in Impala?
我正在尝试弄清楚如何根据我刚刚创建的其他列来创建列。这就是我正在尝试的:
CREATE TABLE test AS
(SELECT
1 as column_1,
2 as column_2,
column_1 + column_2 as column_3
)
但是我得到这个错误,
AnalysisException: Could not resolve column/field reference: 'column_1'
我正在使用 HUE 和 Impala。
您使用子查询或 CTE:
SELECT column_1, column_2,
column_1 + column_2 as column_3
FROM (SELECT 1 as column_1, 2 as column_2) x
SQL 不允许在定义它的 SELECT
中重复使用列别名。原因很简单:SQL不保证SELECT
.
中表达式的处理顺序
我正在尝试弄清楚如何根据我刚刚创建的其他列来创建列。这就是我正在尝试的:
CREATE TABLE test AS
(SELECT
1 as column_1,
2 as column_2,
column_1 + column_2 as column_3
)
但是我得到这个错误,
AnalysisException: Could not resolve column/field reference: 'column_1'
我正在使用 HUE 和 Impala。
您使用子查询或 CTE:
SELECT column_1, column_2,
column_1 + column_2 as column_3
FROM (SELECT 1 as column_1, 2 as column_2) x
SQL 不允许在定义它的 SELECT
中重复使用列别名。原因很简单:SQL不保证SELECT
.