Ir al contenido principal

Full Outer Join

El formato para la sintaxis de la clausula FULL OUTER JOIN es como sigue:

SELECT tabla1.column, tabla2.column
FROM tabla1
FULL OUTER JOIN tabla2
ON (tabla1.column = tabla2.column);

Un Full Outer Join devuelve el resultado combinado de un Left y Right Outer join. Un Inner Join de la tabla1 y la tabla2 es desarrollado posteriormente las filas excluidas por la condición Join de ambas tablas son combinadas en el conjunto de resultado.

La sintaxis tradicional de Oracle no soporta un Full Outer Join, que es típicamente desarrollado mediante la combinación del resultado de un left outer join y un right outer join utilizando el operador de conjunto UNION.

-- CONSULTA CON INNER JOIN
SELECT e.employee_id, e.first_name, d.department_id, d.department_name
FROM   employees e
JOIN departments d ON (d.department_id = e.department_id);

-- CONSULTA CON LEFT OUTER JOIN
SELECT e.employee_id, e.first_name, d.department_id, d.department_name
FROM   employees e
LEFT OUTER JOIN departments d ON (d.department_id = e.department_id);
107 +

-- CONSULTA CON RIGHT OUTER JOIN
SELECT e.employee_id, e.first_name, d.department_id, d.department_name
FROM   employees e
RIGHT OUTER JOIN departments d ON (d.department_id = e.department_id);

-- CONSULTA CON FULL OUTER JOIN
SELECT e.employee_id, e.first_name, d.department_id, d.department_name
FROM   employees e
FULL OUTER JOIN departments d ON (d.department_id = e.department_id);

Comentarios