INGRESAR

REGISTRARSE
Buscador

Unión externa en sql: tipos y ejemplos prácticos

2024-04-05


Unión externa en sql: tipos y ejemplos prácticos

Hay tablas que, al intentar relacionarlas por una columna, no emparejan sus registros. Por ejemplo, al emparejar tablas con columnas que tienen valores nulos, un Natural Join no es útil, ya que excluye estos valores.

En estos casos, debemos usar los Join externos, que permiten recuperar valores nulos. Las combinaciones externas se realizan solo entre dos tablas.

Existen tres tipos de combinaciones externas:

  • Esto devuelve todos los registros de la tabla izquierda. Left outer join: left join.
  • Esto devuelve todos los registros de la tabla derecha .Right outer join: right join.
  • Devuelve los registros tanto de la tabla izquierda como de la tabla derecha.Full outer join: full join.

LEFT JOIN:

  • Localiza los registros de la primera tabla que se correspondan con registros de la segunda.
  • Si no encuentra coincidencias, devuelve los resultados de la segunda tabla con valores nulos.
  • Ejemplo: select primer_nombre nombre, department_name departamento from hr.empleados e left join hr.departamento d on e.department_id = d.department_id.

La diferencia con el Natural Left Join es que aquí podemos especificar el campo de unión. El orden de las tablas es importante: la tabla de la izquierda se usa para localizar registros en la de la derecha.

El LEFT JOIN puede incluir una cláusula "WHERE" para restringir los resultados:

  • Ejemplo: select first_name nombre, department_name departamento from employees e left join departments d on e.department_id = d.department_id where d.department_id is not null.
  • Ejemplo: select first_name nombre, department_name departamento from employees e left join departments d on e.department_id = d.department_id where d.department_id is null.

RIGHT JOIN: Funciona de manera similar a Left Join, pero en este caso, la tabla de la derecha es la que se usa para localizar registros en la tabla de la izquierda.

  • Ejemplo: select primer_nombre nombre, nombre_departamenteo departamento from hr.empleados e right join hr.departamento d on e. departamento _id = d. departamento _id.

La diferencia con el Natural Right Join es que aquí también se puede especificar el campo de unión. Como en Left Join, el orden de las tablas es importante.

El RIGHT JOIN también puede tener una cláusula WHERE:

  • Ejemplo: select primer_nombre nombre, departamento _name departamento from empleados e right join departamentos d on e. departamento_id = d. departamento_id where e. departamento_id is not null.
  • Ejemplo: select primer_nombre nombre, departamento _name departamento from employees e right join departamentos d on e. departamento_id = d. departamento_id where e. departamento_id is null.

FULL OUTER JOIN O FULL JOIN:

Esta es una combinación externa completa que muestra todos los registros de ambas tablas.

  • Ejemplo: select primer_nombre nombre, departamento_name departamento from empleados e full join departamentos d on e. departamento_id = d. departamento_id.

Ejemplos de Join Externo:

imagen imagen imagen

Publicaciones Recientes

imagen del Post
Cómo realizar backups y recuperación en oracle

La realización de backups y recuperación en Oracle es una tarea esencial pa...

imagen del Post
Fundamentos de la arquitectura de oracle database

Oracle Database es una de las bases de datos más populares y robustas utili...

imagen del Post
Cómo instalar oracle database 19c en windows

Oracle Database 19c es una de las versiones más robustas y confiables de la...

imagen del Post
Administración básica de oracle database

La administración de Oracle Database es fundamental para mantener el funcio...

imagen del Post
Explora Temas Interesantes

Desde guías prácticas hasta análisis profundos, nuestro blog está lleno de contenido que te inspirará