valor una sumar obtener numero minimo maximo instruccion definicion consultas consulta como columna agregada sql oracle

una - Significado de(+) en consultas SQL



sql server sum (4)

He encontrado algunas consultas SQL en Oracle que contienen ''(+)'' y no tengo idea de lo que eso significa. ¿Puede alguien explicar su propósito o proporcionar algunos ejemplos de su uso? Gracias


El + es un atajo para OUTER JOIN, dependiendo de en qué lado lo pongas, indica una UNIÓN EXTERIOR IZQUIERDA O DERECHA

Consulte la segunda entrada en esta publicación del foro para ver algunos ejemplos


IIRC, el + se utiliza en versiones anteriores de Oracle para indicar una combinación externa en la sintaxis de unión SQL anterior a ANSI. En otras palabras:

select foo,bar from a, b where a.id = b.id+

es el equivalente de

select foo,bar from a left outer join b on a.id = b.id

NOTA: esto puede ser al revés / ligeramente incorrecto, ya que nunca he usado la sintaxis SQL anterior a ANSI.


Usted usa esto para asegurarse de que la tabla a la que se une no reduzca la cantidad de registros devueltos. Por lo tanto, es útil cuando te unes a una tabla que puede no tener un registro por cada tecla con la que te estás uniendo.

Por ejemplo, si se uniera a una tabla de clientes y compras:

Para hacer una lista de todos los clientes y todas sus compras, desea realizar una combinación externa (+) en la tabla de compras para que los clientes que no hayan comprado nada aún aparezcan en su informe.


Es el sinónimo de Oracle para OUTER JOIN .

SELECT * FROM a, b WHERE b.id(+) = a.id

da el mismo resultado que

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