SQL FULL OUTER JOIN: Cómo unir tablas

La unión de tablas con FULL OUTER JOIN devuelve todos los registros cuando hay una coincidencia en los registros de la tabla izquierda (tabla 1) o derecha (tabla 2).

!FULL OUTER JOIN puede devolver resultados muy grandes!


Concepto de la unión FULL OUTER JOIN

En el siguiente gráfico puedes ver a modo conceptual los registros seleccionados por la sentencia FULL OUTER JOIN.

Full Outer Join SQL

La siguiente declaración SQL selecciona todos los clientes y todas las órdenes:


Ejemplo para utilizar FULL OUTER JOIN

A continuación puedes ver un ejemplo de cómo sería una consulta utilizando la unión FULL OUTER JOIN.

SELECT Clientes.Nombre_Cliente, Pedidos.PedidoID
FROM Clientes
FULL OUTER JOIN Pedidos ON Clientes.ClienteID=Pedidos.ClienteID
ORDER BY Clientes.Nombre_Cliente;

La palabra clave FULL OUTER JOIN  devuelve todas las filas de la tabla izquierda CLIENTES y todas las filas de la tabla derecha (PEDIDOS). Si hay filas en «Clientes»  que no tiene coincidencias en » Pedidos», o si hay filas en «Pedidos» que no tienen coincidencias en «Clientes», esas filas también se mostrarán.