¡Haz clic para puntuar esta entrada!
(Votos: 1 Promedio: 5)
Cómo funciona LEFT JOIN en SQL: explicación con ejemplos prácticos
Portada » Cómo funciona LEFT JOIN en SQL: explicación con ejemplos prácticos

Tiempo de lectura estimado: 5 minutos

Cómo funciona LEFT JOIN en SQL: explicación con ejemplos prácticos

Anuncios
Publicidad

El LEFT JOIN en SQL es una de las cláusulas más utilizadas al momento de unir tablas en bases de datos relacionales. Su ventaja principal es que permite mostrar todos los registros de la tabla izquierda, incluso cuando no existen coincidencias en la tabla derecha.

En este artículo aprenderás:
✅ Qué es LEFT JOIN y cómo funciona.
✅ Ejemplo paso a paso con tablas de empleados y departamentos.
✅ Diferencia entre LEFT JOIN y otros tipos de JOIN.
✅ Consultas útiles con LEFT JOIN.


¿Qué hace LEFT JOIN en SQL?

Cuando usamos LEFT JOIN:

  • Se muestran todos los registros de la tabla izquierda.
  • Los registros de la tabla derecha solo aparecen si hay coincidencia con la condición de unión.
  • Si no existe coincidencia, los valores de la tabla derecha se mostrarán como NULL.

👉 Sintaxis básica:

SELECT columnas
FROM tabla1 AS t1
LEFT JOIN tabla2 AS t2
ON t1.campo = t2.campo;

Ejemplo con tablas de empleados y departamentos

Imaginemos una base de datos llamada empleados con dos tablas:

Tabla departamento

IDnombre
1Ventas
2Marketing
3RecursosHumanos

Tabla empleado

IDnombreapellidoID_departamento
1JuanPérez1
2AnaGómezNULL
3LuisRamírez2

LEFT JOIN para unir empleado con departamento

SELECT e.nombre, e.apellido, d.nombre AS nombre_departamento
FROM empleado AS e
LEFT JOIN departamento AS d
ON e.ID_departamento = d.ID;

📌 Resultado:

nombreapellidonombre_departamento
JuanPérezVentas
AnaGómezNULL
LuisRamírezMarketing

✔ Como vemos, Ana Gómez aparece en la consulta aunque no tenga un departamento asignado.

Cómo funciona LEFT JOIN en SQL
Cómo funciona LEFT JOIN en SQL
Cómo funciona LEFT JOIN en SQL

Filtrando empleados sin departamento

Si queremos ver solo los empleados que no tienen departamento asignado, usamos WHERE d.nombre IS NULL:

SELECT e.nombre, e.apellido, d.nombre AS nombre_departamento
FROM empleado AS e
LEFT JOIN departamento AS d
ON e.ID_departamento = d.ID
WHERE d.nombre IS NULL;

📌 Resultado:

nombreapellidonombre_departamento
AnaGómezNULL

Invirtiendo la consulta: departamentos sin empleados

Si ahora queremos ver departamentos que no tienen empleados asignados, cambiamos el orden de la unión:

SELECT d.nombre AS nombre_departamento, e.nombre, e.apellido
FROM departamento AS d
LEFT JOIN empleado AS e
ON d.ID = e.ID_departamento
WHERE e.nombre IS NULL;

📌 Resultado:

nombre_departamentonombreapellido
RecursosHumanosNULLNULL

✔ Así identificamos qué departamentos están vacíos.


Diferencia entre LEFT JOIN, INNER JOIN y RIGHT JOIN

  • INNER JOIN: muestra solo registros con coincidencia en ambas tablas.
  • LEFT JOIN: muestra todos los registros de la tabla izquierda y coincidencias (o NULL) de la derecha.
  • RIGHT JOIN: lo contrario: muestra todos los registros de la tabla derecha y coincidencias (o NULL) de la izquierda.

Casos de uso de LEFT JOIN

El LEFT JOIN es muy útil cuando:

  • Queremos ver empleados con o sin departamento.
  • Listar clientes, aunque no tengan pedidos.
  • Mostrar cursos, aunque no tengan estudiantes inscritos.
  • Identificar registros huérfanos en una tabla relacionada.

Conclusión

El LEFT JOIN en SQL es clave para obtener resultados completos, incluyendo registros que no tienen coincidencias en la tabla relacionada.

✔ Te permite identificar datos faltantes y realizar reportes más claros.
✔ Es una de las herramientas más usadas en reportes empresariales y análisis de datos.


📹 Demostración en vídeo
En el vídeo explicativo podrás ver paso a paso cómo aplicar LEFT JOIN, filtrar empleados sin departamento y encontrar departamentos sin empleados.

Si te ha servido esta guía, compártela y suscríbete para más artículos sobre SQL y bases de datos relacionales. 🚀

Si te ha gustado este contenido, ¡no olvides dejar tu "me gusta" y suscribirte para más tutoriales!

Preguntas frecuentes (FAQ) sobre LEFT JOIN en SQL

¿Qué diferencia hay entre LEFT JOIN e INNER JOIN?

  • INNER JOIN devuelve solo los registros que tienen coincidencias en ambas tablas.
  • LEFT JOIN devuelve todos los registros de la tabla izquierda, aunque no tengan coincidencias en la derecha (rellenando con NULL).

¿Cuándo debo usar LEFT JOIN?

Se utiliza cuando queremos incluir todos los registros de una tabla, aunque no haya coincidencias en la otra. Ejemplo: ver todos los empleados aunque no tengan un departamento asignado.


¿Qué pasa si hay NULL en un LEFT JOIN?

Si no existe coincidencia en la tabla derecha, los campos de esa tabla se muestran como NULL. Esto no significa error, sino que no hay relación en esa fila.


¿Es más lento usar LEFT JOIN que INNER JOIN?

Depende del tamaño de las tablas y los índices. Generalmente, INNER JOIN es más rápido, porque devuelve menos registros. Sin embargo, LEFT JOIN es imprescindible cuando necesitas mostrar datos incompletos.


¿Se puede usar LEFT JOIN con más de dos tablas?

Sí, puedes encadenar varios LEFT JOIN en una misma consulta para unir múltiples tablas, siempre cuidando las relaciones con las claves primarias y foráneas.

Ejemplo:

SELECT e.nombre, d.nombre AS departamento, p.nombre AS proyecto
FROM empleado e
LEFT JOIN departamento d ON e.ID_departamento = d.ID
LEFT JOIN proyecto p ON e.ID_proyecto = p.ID;

❓¿Qué diferencia hay entre LEFT JOIN y RIGHT JOIN?

  • LEFT JOIN: muestra todos los registros de la tabla izquierda.
  • RIGHT JOIN: muestra todos los registros de la tabla derecha.
    Ambos son equivalentes si se invierte el orden de las tablas, pero por convención se suele usar más LEFT JOIN.

Seguir leyendo:

¡Haz clic para puntuar esta entrada!
(Votos: 1 Promedio: 5)

Deja un comentario

¡Haz clic para puntuar esta entrada!
(Votos: 1 Promedio: 5)
error: Content is protected !!
Scroll al inicio
Hablemos de informática
Resumen de privacidad

Esta web utiliza cookies para que podamos ofrecerte la mejor experiencia de usuario posible. La información de las cookies se almacena en tu navegador y realiza funciones tales como reconocerte cuando vuelves a nuestra web o ayudar a nuestro equipo a comprender qué secciones de la web encuentras más interesantes y útiles.