2017-09-13 41 views
0

在Teradata SQL中,我有两个想要加入的易失性表。但是,如果我加入colA,它们都会显示在输出中。我只想在输出中使用这个colA,而不是两次。Join在Teradata SQL中生成重复密钥(列)

所以我必须:

Table1 with colA, colB, colC 
Table2 with colA, colD, colE 

我的查询:

SELECT * FROM Table1 
JOIN Table2 ON Table1.colA = Table2.colA 

给我:colA, colB, colC, colA, colD, colE

,而我想有:colA, colB, colC, colD, colE

任何人知道如何解决这个?

+1

'select table1.colA,table1.colB,table1.colC,table2.colD,table2.colE from ...' – jarlh

回答

2

最好的做法是明确地选择你想要的列 - 合格的名称:

SELECT t1.A, t1.B, t1.C, t2.D, t2.E 
FROM Table1 t1 JOIN 
    Table2 t2 
    ON t1.colA = t2.colA; 

的ANSI语法有USING条款,并允许你做:

SELECT * 
FROM Table1 t1 JOIN 
    Table2 t2 
    USING (colA); 

我不相信Teradata支持这一条款。