You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PL/SQL中(+)运算符的作用及示例场景疑问解析

PL/SQL中(+)运算符的用途说明

(+)是Oracle数据库专有的外连接语法,用来实现左/右外连接,是标准SQL JOIN语法普及前的特有写法,仅适用于Oracle环境。

针对你给出的例子 rec.ptp_id = PTP.ptp_id(+):

  • 这里(+)放在右侧表PTP的字段上,代表左外连接
  • 左表rec的所有行都会被保留;右表PTP只有当ptp_id与左表匹配时才会返回对应数据,无匹配时PTP的所有字段值为NULL

补充不同位置的含义:

  • 如果(+)放在左侧表字段上,比如rec.ptp_id(+) = PTP.ptp_id,则代表右外连接——右表PTP的所有行都会被保留,左表rec无匹配时字段值为NULL

注意:这种(+)语法属于Oracle旧写法,现在更推荐使用标准SQL的LEFT OUTER JOIN/RIGHT OUTER JOIN来实现外连接,可读性更强。比如上述左外连接可以改写为标准语法:

SELECT *
FROM rec
LEFT OUTER JOIN PTP 
  ON rec.ptp_id = PTP.ptp_id

内容的提问来源于stack exchange,提问作者Medha Khairnar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 16:51:37