3

我的问题与这个问题非常相似,但在 Teradata 中:

SQL Server 相当于 MySQL 的 USING

此查询是否有任何等效的快捷方式?

SELECT * 
  FROM t1 
  JOIN t2 
    ON (t1.column = t2.column)
4

3 回答 3

1

不。使用自然连接可以做的最接近的事情是:

SELECT
FROM T1, T2
WHERE t1.column = t2.column;
于 2011-03-08T16:48:46.993 回答
1

是的。这是 ANSI JOIN 语法。例如:

SELECT
   *
FROM T1
   INNER JOIN T2 ON T1.column = T2.column
;

对于多列连接条件,请执行以下操作:

SELECT
    *
FROM T1
   INNER JOIN T2 ON T2.column1 = T1.column1
      AND T2.column2 = T1.column2
   LEFT OUTER JOIN T3 ON T3.column1 = T2.column1 
;

Teradata® RDBMS SQL 参考 - 第 6 卷数据操作语句的第 2 章提供了详细、全面的信息和示例。

于 2011-04-19T19:56:09.977 回答
0

如果 Teradata 支持 NATURAL JOIN,那么您已经准备就绪。在 MySQL 中,NATURAL JOIN 是带有 USING 子句的 INNER JOIN。此外,您可以将 LEFT|RIGHT 和 OUTER 子句添加到 NATURAL 子句,以进一步指定您希望如何进行 JOIN。

检查 Teradata 的文档,希望它应该支持它。

于 2011-02-14T15:09:42.853 回答