加入在 Teradata 中产生重复的键(列)SQL
Join produces duplicated key (column) in Teradata SQL
在 Teradata SQL 中,我有两个想要加入的可变表。但是,如果我在 colA 上加入它们,它们都会出现在输出中。我只希望这个 colA 在输出中出现一次,而不是两次。
所以我有:
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
有人知道如何解决这个问题吗?
最佳做法是明确选择所需的列 -- 使用限定名称:
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 不支持此条款。
在 Teradata SQL 中,我有两个想要加入的可变表。但是,如果我在 colA 上加入它们,它们都会出现在输出中。我只希望这个 colA 在输出中出现一次,而不是两次。
所以我有:
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
有人知道如何解决这个问题吗?
最佳做法是明确选择所需的列 -- 使用限定名称:
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 不支持此条款。