当我尝试从连接中创建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没有 [编辑:wij指出Vertica SQL确实有USING
USING
]。我也可以明确列出列而不是选择*
,但其中一个表有数百列,我想要它们全部(重复键除外)。还有doesn't seem to be an easy way可以选择除一列之外的所有列。
如果没有USING
的列名相同,是否有办法在联接中只选择一个键列?
答案 0 :(得分:2)
列的列表(因为两个表都有字段键),例如:
CREATE VIEW c AS
SELECT a.*, b.field1, b.field2 FROM a JOIN b ON a.key = b.key;