2013-05-16 53 views
1

我执行下面的查询左外连接,没有导致最终的查询

Select * from A a left outer join B b on (b.id = a.id) 

我越来越从一条记录,并从B.我期待最终选择查询一条记录没有记录但没有。

下面是一些样本数据:

一个

v_id, id,  date,  d_id 
1, 1244578, 02-MAR-11, 1827877 

B,无数据:

e_id,id,amount 

我在做什么错?我怎么能这样做呢?

+0

请显示一些记录 – hims056

+0

请显示数据。 – ankurtr

+0

记录是这样的 A(v_id,id,date,d_id)(1,1244578,02-MAR-11,1827877)AND B(e_id,id,amount)[无数据存在] –

回答

0

这应该很好地工作:

Select * 
from A a 
left outer join B b on b."id" = a."id" 

看到它在这里的行动:

这会给你:

| V_ID |  ID |  DATE | D_ID | E_ID | AMOUNT | 
---------------------------------------------------------- 
| 1 | 1244578 | 02-MAR-11 | 1827877 | (null) | (null) | 
0

您正在从表A中获取一条记录,这是因为表A只有一条记录,表B没有记录。 在第一个表的左外连接内容显示在第二个表中的结果连接中,但在您的情况下第二个表没有记录,因此最终结果显示该记录的空值。