sql select三层查询 第三层访问不到第一层的表

如下sql
select
(select xx from (select * from T3 where T3.id = a.id))
from T1 a

再第三层select 里面会提示访问不到 a , 这有什么解决办法吗

select 每一次的查询结果都是一个全新的域,这个域展示出来就是一张全新的表,select之前的表一般都是访问不到的。最好使用楼上的连接。

select 
(select xx from T3 where T3.id = a.id)
from T1 a

你改用inner join吧

select * form A inner join B on A.id=B.id inner join C on A.id=C.id