这是我的查询的一部分:
LEFT OUTER JOIN hz_cust_acct_sites_all acct ON acct.party_site_id = hzps.party_site_id
LEFT OUTER JOIN hz_cust_site_uses_all site ON site.cust_acct_site_id = acct.cust_acct_site_id
AND site.site_use_code = 'BILL_TO'
在第二个LEFT OUTER JOIN
语句中引用acct是否可以?范围如何适用于SQL。
谢谢!
答案 0 :(得分:1)
是的,技术上允许使用可选部分的可选部分
编辑: 我仍然怀疑我是否正确理解了问题。 我猜这是关于OUTER JOIN链接的。
考虑这个例子:
create table t1 ( a int, b int );
create table t2 ( a int, b int );
create table t3 ( a int, b int );
insert into t1 values ( 1, 10 );
insert into t1 values ( 2, 20 );
insert into t1 values ( 3, 30 );
insert into t2 values ( 10, 100 );
insert into t2 values ( 20, 200 );
insert into t3 values ( 100, 1000 );
insert into t3 values ( 300, 3000 );
查询
select t1.a, t2.b t2_b, t3.b t3_b
from
T1
left join t2 on ( t1.b = t2.a )
left join t3 on ( t2.b = t3.a )
order by 1, 2, 3
会得到:
A T2_B T3_B
1 100 1000 ==> here all linked.OK
2 200 (null) ==> here just T2_B got, but no link to T3.
3 (null) (null) ==> no elements to bring from T2, T3