首页 > 解决方案 > 如何将两个单独的变量上的两个表与一个具有相同名称的变量连接起来

问题描述

这就是我到目前为止所拥有的。我正在尝试加入这两个表,如果我不使用 using() 函数,那么 SQL 会告诉我仅使用 ON 存在无效的关系运算符。然而,使用“使用”也会引发我没有正确结束它的错误。任何帮助都会很好,谢谢。

DROP TABLE JOINED_TABLE;
CREATE TABLE JOINED_TABLE AS

SELECT *
FROM
H_SAMPLE50 H
INNER JOIN D_SAMPLE50 D
USING(ID_NBR)
AND(H.PULL_DATE = D.PREV_DATE)

标签: sqloracle

解决方案


你有两个选择。一个是where

SELECT *
FROM H_SAMPLE50 H INNER JOIN
     D_SAMPLE50 D
     USING (ID_NBR)
WHERE H.PULL_DATE = D.PREV_DATE;

另一个是ON

SELECT *
FROM H_SAMPLE50 H INNER JOIN
     D_SAMPLE50 D
     ON H.ID_NBR = D.ID_NBR AND H.PULL_DATE = D.PREV_DATE;

可以将其视为处理所有键具有相同名称的USING情况的简写。如果不是这种情况,那么只需使用.JOINON


推荐阅读