读书人

请教 select后再连接另一个表的方法

发布时间: 2013-07-21 21:55:43 作者: rapoo

请问 select后再连接另一个表的方法
我希望通过
select a from T where a>10

得到一个结果

然后再select出 另一个表T1 中 所有满足 T1.a = 上述查询后得到的a的 结果


我这样写,系统提示 join旁有语法错误
select B.a
join (select A.a from T A where A.a >10) C
on (B.a=C.a)
[解决办法]

SELECT  * FROM A 
JOIN B ON A.ID = B.ID

[解决办法]
select B.a
from b
where b.a in(select A.a from T A where A.a >10)

为什么要那么复杂呢?
[解决办法]

slect B.a from B join A on
A.a=B.a and A.a>10

[解决办法]
或者直接用Oracle的语法来做join咯,看上去比Join更直接:

SELECT B.*, A.*
FROM A,B
WHERE A.a=B.a AND A.a>10

[解决办法]
引用:
select A.a from T A where A.a >10
join (select B.a FROM B) C
on (B.a=C.a)

我反过来写,就不行



select A.a
from
(
select a
from T
where a>10
) A
join B on
A.a=B.a

反过来是这样写
[解决办法]
其实你最好给出点测试数据和期待结果,不然很难写

读书人网 >SQL Server

热点推荐