我刚接触oracle,对于外连接不是很懂,概念上的东西我知道了,就是主表的数据全部取出,我现在有一个问题。
select balance.segment a
from ds_table, balance
where ds_table.id = balance.id(+)
and balance.segment(+) = '1';
表 ds_table 表 balance
id id segment
1 1 1
2 2 null
我听别人说在用结合表的字段作为条件的时候,都要加上+,
但是上面的数据我明明只要外连接后segment = 1的字段,
但它执行的结果是2条数据都抽出来了,我不加+的话可以实现
功能,但是又不符合规范。
有人给讲解下吗,或者我用内连接就可以了,希望高手能给我点
oracle的学习资料,谢谢。
select balance.segment a
from ds_table, balance
where ds_table.id = balance.id(+)
and balance.segment(+) = '1';
表 ds_table 表 balance
id id segment
1 1 1
2 2 null
我听别人说在用结合表的字段作为条件的时候,都要加上+,
但是上面的数据我明明只要外连接后segment = 1的字段,
但它执行的结果是2条数据都抽出来了,我不加+的话可以实现
功能,但是又不符合规范。
有人给讲解下吗,或者我用内连接就可以了,希望高手能给我点
oracle的学习资料,谢谢。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/7714329/viewspace-739520/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/7714329/viewspace-739520/