前言:
眼前各位老铁们对“oracle 加号使用方法”大体比较注意,朋友们都想要剖析一些“oracle 加号使用方法”的相关资讯。那么小编在网摘上搜集了一些有关“oracle 加号使用方法””的相关文章,希望同学们能喜欢,朋友们一起来学习一下吧!今天在代码review的时候,发现sql中很多 (+)的写法,看得头晕,记录下。对于sql逻辑比较复杂的场景不推荐是有 (+),容易自己晕掉。
Oracle sql 中 (+)号可以理解为补充的意思,即哪个表有加号,这个表就是匹配表。加在右表的列上代表右表为补充,为左外连接。加在左表的列上代表左表为补充,为右外连接。
注:完全外连接不支持(+)写法;在MySQL中不能作为左右连接标识。
举例:
select * from t_emp_info e, t_oragan_info g where e.organ_code = g.organ_code(+)
解释:e.organ_code = g.organ_code(+)表示t_oragan_info是补充匹配表,即t_oragan_info表中不存在匹配的记录,在t_emp_info表也查询出来,相当于左连接(left join)。
注意事项:
(+)操作符只能出现在where子句中,并且不能与outer join语法同时使用。
当使用(+)操作符执行外连接时,如果在where子句中包含有多个条件,则必须在所有条件中都包含(+)操作符。
(+)操作符只适用于列,而不能用在表达式上。
(+)操作符不能与or和in操作符一起使用。
(+)操作符只能用于实现左外连接和右外连接,而不能用于实现完全外连接。
标签: #oracle 加号使用方法 #oracle 加号