Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

Como usar a junção externa do Oracle com uma cláusula de filtro where


Você está muito melhor usando a sintaxe ANSI
SELECT *
  FROM a
       LEFT OUTER JOIN b ON( a.id = b.id and
                             b.val = 'test' )

Você também pode fazer a mesma coisa usando a sintaxe do Oracle, mas fica um pouco complicado
SELECT *
  FROM a, 
       b
 WHERE a.id = b.id(+)
   AND b.val(+) = 'test'

Observe que em ambos os casos, estou ignorando o c table já que você não especifica uma condição de junção. E estou assumindo que você realmente não quer unir A a B e então gerar um produto cartesiano com C.