日期:2014-05-17  浏览次数:20957 次

关于oracle数据库查询的一个问题
表A,B结构如下:
a,b,c,(A表) a,d (B表)
1 1 232 
2 3 342
3 4 341
4
5

现在我要把B表中的d列插入到A表中,也就是在A表中新增一列d。如果A.a=B.a,则把B表中d列的值填到A表中新增的d列中,如果找不到关联,则d列为空。最后得到的查询结果如下:
a,b,c,d
1 232
2
3 342
4 341
5

请问应该如何写查询语句?

------解决方案--------------------
select a.*,b.d
from a
left join b on a.a=b.a

------解决方案--------------------
select a.*,b.d 
from a 
left join b on a.a=b.a 


select a.*,b.d 
from a,b 
where a.a=b.a(+)

------解决方案--------------------
楼主的问法有歧义,搞的2楼同志都增加了一列D了
select a.*,b.d 
from a,b 
where a.a=b.a(+)