使用ORACLE在多于2个表上加入SQL

时间:2012-10-31 04:43:32

标签: sql join

假设我有三张桌子,A,B和C. 我加入了表A和表B,现在我想加入结果AB和表c。
我是否需要创建视图然后执行加入或需要通过嵌套查询来执行此操作?

3 个答案:

答案 0 :(得分:7)

你没有说你正在使用哪个数据库,所以语法可能是错误的,但实际上,多表连接与加入两个表没有任何不同:

SELECT ...
FROM a
JOIN b ON ...
JOIN c ON ...
JOIN d ON ...

答案 1 :(得分:4)

不,您将按以下方式执行此操作

SELECT  *
FROM    A [INNER/LEFT/RIGHT/OUTER] JOIN
        B   ON  [a/b].IDCols = [a/b].IDCols [INNER/LEFT/RIGHT/OUTER] JOIN
        C   ON  [a/b/c].IDCols = [a/b/c].IDCols

特定连接(INNER / LEFT / RIGT / OUTER)取决于您的要求。

请查看Introduction to JOINs – Basic of JOINs了解概述

JOIN ON的标准还取决于表格之间的关系。

答案 2 :(得分:0)

您可以使用以下内容:

sample=[[1,[1,0]],[1,1]]
for i in range(len(sample)):
    [1,0] in sample[i]

或者您可以使用以下内容:

select *
from A, B, C
where A.id = B.id
and A.id = C.id

你加入的方式当然取决于表格如何相互关联,那么A,B,C的主键和外键是什么。 您也可以使用OUTER JOIN而不是INNER JOIN,具体取决于我们的数据。