oracle在where子句中加(+) 什么意思啊?

如题所述

Oracle数据库的连接查询包括:等值连接、外连接、自连接等。
where子句中加(+) 是外连接的一种。外连接分:左外连接和右外连接。
select * from emp,dept where emp.deptno=dept.deptno(+); --右外连接
select * from emp,dept where emp.deptno(+)=dept.deptno; --左外连接
带(+)侧的数据即使不存在,另一侧的数据依然可以显示出来。
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-09-14
select A.* ,B.* from A,B where A.id = b.id(+)
相当于
select A.*,B.* from A left join B on A.id = B.id本回答被提问者采纳
第2个回答  2012-08-15
连接!
第3个回答  2012-08-14
外连接,有左外连接和右外连接之分,看是加在条件的哪一头了
第4个回答  2012-08-14
在什么地方写的,是sql里吗?
应该在某种语言中,用于连接串吧追问

在sql语句中

select * from t1.name,t2.sal,t3.role
from table_1 t1,emp t2 ,table_role t3

where t1.id=t2.e_id(+)
and t2.e_name=t3.name(+);

追答

表式外连接

相似回答