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

Operador Oracle (+)


Essa é uma notação específica do Oracle para um OUTER JOIN, porque o formato ANSI-89 (usando uma vírgula na cláusula FROM para separar as referências de tabela) não padronizou as junções OUTER.

A consulta seria reescrita na sintaxe ANSI-92 como:
   SELECT ...
     FROM a
LEFT JOIN b ON b.id = a.id

Este link é muito bom para explicar a diferença entre JOINs.

Deve-se notar também que, embora o (+) funciona, a Oracle recomenda não usando isso:

A Oracle recomenda que você use o FROM cláusula OUTER JOIN sintaxe em vez do operador de junção Oracle. Consultas de junção externa que usam o operador de junção Oracle (+) estão sujeitos às seguintes regras e restrições, que não se aplicam ao FROM cláusula OUTER JOIN sintaxe: