我需要将ID#
的{{1}}字段连接到tableA
的{{1}}字段,以便可以将{{1}的ID#
字段加入}到tableB
中的NAME
字段。当前正在使用CTE,我想在不需要CTE的情况下完成此任务。
当前正在做:
tableB
我假设我可以通过嵌套联接执行相同的操作?
答案 0 :(得分:0)
将表A中的ID#字段连接到表B中的ID#字段,这样我就可以将表B中的NAME字段连接到表C中的NAME字段。
为什么要使用CTE?只需将JOIN
链接起来:
SELECT . . . -- whatever you want here
FROM tableA a JOIN
tableB b
ON a.ID_REF# = b.ID_REF# JOIN
tableC c
ON b.Name = c.Name;
答案 1 :(得分:0)
实际上,您不需要CTE-您可以加入两次。根据您的问题陈述,应该是:
select c.name
from tableC c
inner join tableB b on b.name = c.name
inner join tableA a on a.id# = b.id#
答案 2 :(得分:0)
内部连接输出相同的结果,而不管连接的顺序如何(a-> b-> c,c-> b-> a)。另请注意,不带任何关键字的默认联接将为inner join
。
所以您可以这样做(c-> a-> b)
select ...
from tableC c
join tableB b on b.name = c.name
join tableA a on a.ID_REF# = b.ID_REF#
或这个(a-> b-> c):
select ...
from tableA a
join tableB b on a.ID_REF# = b.ID_REF#
join tableC c on b.name = c.name
答案 3 :(得分:0)
{{1}}