举例: A表 id num 1 1 3 1 4 1B表 id name 1 a 2 b 3 c 4 d 想查看所有id的num,如果用: select b.id,b.name,a.num from a,b where a.id = b.id; 只能得到: id name num 1 a 1 3 c 1 4 d 1 因为A表中没有与B中的id=2匹配的记录。 这时用: select b.id,b.name,a.num from a,b where a.id(+) = b.id; 得到: 1 a 1 2 b 3 c 1 4 d 1 够明白了吧?
A表
id num
1 1
3 1
4 1B表
id name
1 a
2 b
3 c
4 d
想查看所有id的num,如果用:
select b.id,b.name,a.num from a,b where a.id = b.id;
只能得到:
id name num
1 a 1
3 c 1
4 d 1
因为A表中没有与B中的id=2匹配的记录。
这时用:
select b.id,b.name,a.num from a,b where a.id(+) = b.id;
得到:
1 a 1
2 b
3 c 1
4 d 1
够明白了吧?