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

Comment utiliser la jointure externe oracle avec une clause where de filtre

Mieux vaut utiliser la syntaxe ANSI

SELECT *
  FROM a
       LEFT OUTER JOIN b ON( a.id = b.id and
                             b.val = 'test' )

Vous pouvez également faire la même chose en utilisant la syntaxe d'Oracle, mais cela devient un peu compliqué

SELECT *
  FROM a, 
       b
 WHERE a.id = b.id(+)
   AND b.val(+) = 'test'

Notez que dans les deux cas, j'ignore le c table puisque vous ne spécifiez pas de condition de jointure. Et je suppose que vous ne voulez pas vraiment joindre A à B puis générer un produit cartésien avec C.