Oracle
 sql >> Datenbank >  >> RDS >> Oracle

Oracle (+)-Operator

Das ist eine Oracle-spezifische Notation für einen OUTER JOIN, da das ANSI-89-Format (mit einem Komma in der FROM-Klausel zum Trennen von Tabellenreferenzen) OUTER-Joins nicht standardisiert hat.

Die Abfrage würde in ANSI-92-Syntax neu geschrieben werden als:

   SELECT ...
     FROM a
LEFT JOIN b ON b.id = a.id

Dieser Link erklärt ziemlich gut den Unterschied zwischen JOINs.

Es sollte auch beachtet werden, dass obwohl der (+) funktioniert, Oracle empfiehlt nicht verwenden:

Oracle empfiehlt die Verwendung von FROM Klausel OUTER JOIN Syntax anstelle des Oracle-Join-Operators. Outer-Join-Abfragen, die den Oracle-Join-Operator (+) verwenden unterliegen den folgenden Regeln und Einschränkungen, die nicht für FROM gelten Klausel OUTER JOIN Syntax: