在何种情况下使用外部连接以及对优化查询有什么好处?
使用在代码关联的情况下,特别在多表进行查询时,往往会因为其中的一个关联关系不成立,导致无法找到数据。比如:两表联合查询,如果一个表中有100条记录,而另一张表只有10条。
用关联条件直接连接后,会发现只返回10条记录,而正好你想要的记录不只这10条,而是100条(如果只想要这10条,就不用外连接)。这时,你最好使用外连接,可以把100 条记录全部查出来。
例如:
表A ID COL1 COL2
1 1 1
2 2 2
表B ID COL3 COL4
1 1 1
这时如果你用select id,col1,col2 from a,b where a.id = b.id,
只有一条记录被选出。
如果你用select id,col1,col2 from a,b, where a.id = b.id(+)
会有两条记录。
U MAY TRY IT。
注意:(+)写在右边是左外连,写在左边是右外连,