Oracle
 sql >> Base de données >  >> RDS >> Oracle

Opérateur Oracle (+)

C'est la notation spécifique à Oracle pour une OUTER JOIN, car le format ANSI-89 (utilisant une virgule dans la clause FROM pour séparer les références de table) ne normalisait pas les jointures OUTER.

La requête serait réécrite dans la syntaxe ANSI-92 comme :

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

Ce lien explique assez bien la différence entre les JOIN.

Il convient également de noter que même si le (+) fonctionne, Oracle recommande de ne pas l'utiliser :

Oracle vous recommande d'utiliser le FROM clause OUTER JOIN plutôt que l'opérateur de jointure Oracle. Requêtes de jointure externe qui utilisent l'opérateur de jointure Oracle (+) sont soumis aux règles et restrictions suivantes, qui ne s'appliquent pas au FROM clause OUTER JOIN syntaxe :