0

当我尝试通过连接在 Vertica 中创建视图时,

CREATE VIEW c AS 
    SELECT * FROM a JOIN b ON a.key = b.key;

我收到一个错误,因为键列重复:

ROLLBACK 5450:  View definition can not contain duplicate column names "key"

在非 Vertica SQL 中,我知道USING当两个键列名称相同时我可以使用关键字,但 Vertica 没有USING[编辑:wij指出 Vertica SQL 确实有USING]。我也可以明确列出列而不是选择*,但是其中一个表有数百列,我想要它们全部(重复键除外)。似乎也没有一种简单的方法可以选择除一列之外的所有列。

当列名相同时,有没有办法在连接中只选择一个键列USING

4

1 回答 1

2

写列列表(因为两个表都有字段键),例如:

CREATE VIEW c AS 
SELECT a.*, b.field1, b.field2 FROM a JOIN b ON a.key = b.key;
于 2016-04-13T19:49:54.267 回答