我正在使用Oracle SQL Developer查询Oracle数据库(不确定它是哪个版本),我将使用我为SQL生成的SQL报告。以前开发人员编写的许多报告都没有使用JOIN关键字来建立连接(因此我不太熟悉JOIN关键字)。
他们创建的许多连接都是在WHERE语句中创建的。我会注意到这样的事情。
Select * From TableA, TableB WHERE TableA.PrimaryKey(+) = TableB.ForeignKey
我的问题是关于(+)。它的用途是什么,我如何在我的代码中使用它?
答案 0 :(得分:8)
答案 1 :(得分:8)
代表“右外连接”(正确,因为=
位于+
的右侧)。
SELECT *
FROM TableA, TableB
WHERE TableA.PrimaryKey(+) = TableB.ForeignKey
相当于
SELECT *
FROM TableA
RIGHT OUTER JOIN TableB
ON (TableA.PrimaryKey = TableB.ForeignKey)
答案 2 :(得分:3)
右外连接
答案 3 :(得分:0)
(+)用于在Oracle中执行右外连接 RIGHT OUTER JOIN是允许您指定JOIN子句的JOIN操作之一 详情 http://docs.oracle.com/javadb/10.8.3.0/ref/rrefsqlj57522.html