Ir al contenido principal

SQL LEFT JOIN vs. LEFT OUTER JOIN: lo que necesitas saber

LEFT JOIN y LEFT OUTER JOIN en SQL son idénticos: no existe diferencia funcional entre ellos. Sigue leyendo para ver ejemplos prácticos y cómo aplicarlos eficazmente en tus consultas.
Actualizado 17 sept 2026  · 4 min leer

Explorar con IA

ChatGPTClaudePerplexity

Entender los matices de los joins en SQL es imprescindible para cualquiera que trabaje con bases de datos relacionales. En este tutorial, vamos a profundizar en LEFT JOIN y LEFT OUTER JOIN en SQL.

Y si quieres dominar SQL y llevar tus consultas al siguiente nivel, apúntate a un curso como Joining Data in SQL que te ayudará de verdad a comprender las diferencias sutiles pero importantes tanto en joins de una tabla como de dos.

Perfeccionamiento de SQL para principiantes

Adquiere los conocimientos de SQL para interactuar con tus datos y consultarlos.
Empieza a Aprender Gratis

LEFT JOIN vs. LEFT OUTER JOIN

No hay ninguna diferencia entre un LEFT JOIN y un LEFT OUTER JOIN. Son funciones de SQL intercambiables. Ambas hacen exactamente lo mismo: devuelven todas las filas de la tabla izquierda y las filas coincidentes de la tabla derecha.

Veamos un ejemplo real para comprobar por nosotros mismos que LEFT JOIN y LEFT OUTER JOIN son lo mismo. Para ello, crearemos y usaremos dos tablas de muestra: Employees y Departments.

CREATE TABLE Departments (
    DepartmentID INT PRIMARY KEY,
    DepartmentName VARCHAR(50)
);
INSERT INTO Departments (DepartmentID, DepartmentName) VALUES
(1, 'HR'),
(2, 'IT'),
(3, 'Finance'),
(4, 'Marketing');
CREATE TABLE Employees (
    EmployeeID INT PRIMARY KEY,
    EmployeeName VARCHAR(50),
    DepartmentID INT,
    FOREIGN KEY (DepartmentID) REFERENCES Departments(DepartmentID)
);
INSERT INTO Employees (EmployeeID, EmployeeName, DepartmentID) VALUES
(1, 'Alice', 1),
(2, 'Bob', 2),
(3, 'Charlie', NULL),
(4, 'David', 3);

LEFT JOIN

Ahora que tenemos listas nuestras dos tablas, probemos una consulta con LEFT JOIN.

SELECT Employees.EmployeeID, Employees.EmployeeName, 
Departments.DepartmentName
FROM Employees
LEFT JOIN Departments ON Employees.DepartmentID = Departments.DepartmentID;

Output from the <code624

Salida de la función LEFT JOIN. Imagen del autor

Nuestra consulta con LEFT JOIN devuelve todas las filas de la tabla de la izquierda, Employees, y las filas coincidentes de la tabla de la derecha, Departments. Si no hay coincidencia, se devuelven valores NULL o ausentes para las columnas de la tabla Departments, que es la de la derecha.

LEFT OUTER JOIN

Ahora probémoslo con LEFT OUTER JOIN:

SELECT Employees.EmployeeID, Employees.EmployeeName, Departments.DepartmentName
FROM Employees
LEFT OUTER JOIN Departments ON Employees.DepartmentID = Departments.DepartmentID;

Output from the <code589

Salida de la función LEFT OUTER JOIN. Imagen del autor

Como ves, ambas consultas han producido el mismo resultado.

Cuándo usar LEFT JOIN o LEFT OUTER JOIN

LEFT JOIN / LEFT OUTER JOIN es increíblemente útil en muchos escenarios. Aquí tienes algunos ejemplos.

  • Identificar registros sin correspondencia: Puedes usar LEFT JOIN o LEFT OUTER JOIN para encontrar registros en una tabla que no tienen correspondencia en otra. En la consulta anterior, puedes ver que nuestro amigo Charlie no está asignado a ningún departamento.

  • Comprobaciones de integridad de datos: Puedes usar LEFT JOIN o LEFT OUTER JOIN para garantizar la consistencia de los datos entre tablas comprobando registros ausentes o no coincidentes. Por ejemplo, podríamos haber usado una cláusula WHERE para filtrar el conjunto de resultados e incluir solo las filas donde el registro Departments.DepartmentID sea NULL o falte.

  • Combinar datos relacionados: Usa LEFT JOIN o LEFT OUTER JOIN para combinar datos de tablas relacionadas en un único informe completo. Este enfoque agrega información de múltiples fuentes y ofrece una visión completa de tus datos.

Rendimiento y técnicas avanzadas

Aunque LEFT JOIN y LEFT OUTER JOIN son sencillos, hay varias consideraciones de rendimiento y técnicas avanzadas que conviene tener en cuenta.

Impacto en el rendimiento de la consulta

LEFT JOIN / LEFT OUTER JOIN puede afectar al rendimiento cuando trabajas con conjuntos de datos grandes. A medida que aumenta el número de filas de tus tablas, también aumenta el tiempo necesario para procesar el join y recuperar los resultados. Por tanto, es fundamental tener en cuenta el tamaño de las tablas implicadas y optimizar tus consultas para que sean eficientes.

Estrategias de indexación para mejorar el rendimiento

Usar índices en las columnas implicadas en las condiciones del join puede mejorar significativamente el tiempo de procesamiento. Un índice ayuda a la base de datos a encontrar y emparejar filas entre tablas con rapidez. Por ejemplo, si a menudo unes tablas por DepartmentID, crear un índice en la columna DepartmentID en ambas tablas acelerará el proceso, haciendo que tus consultas sean más eficientes y ágiles.

Comparación con otros tipos de joins

Entender cuándo usar distintos joins (INNER JOIN, RIGHT JOIN, FULL OUTER JOIN) es importante para optimizar consultas. LEFT JOIN o LEFT OUTER JOIN es especialmente útil cuando necesitas todos los registros de la tabla izquierda. Si no necesitas todos los registros de la tabla izquierda, plantéate otra opción.

Uso con subconsultas

Las subconsultas, también llamadas consultas internas o anidadas, ayudan en escenarios complejos de recuperación de datos. Combinadas con LEFT JOIN o LEFT OUTER JOIN, pueden ayudarte a filtrar y agregar datos, unir tablas de forma condicional y descomponer consultas complejas en otras más manejables.

Conclusiones

Es fundamental entender las funciones LEFT JOIN y LEFT OUTER JOIN en SQL para una gestión, elaboración de informes y análisis de datos eficaces. Aunque su funcionalidad es idéntica, conocer sus casos de uso, implicaciones de rendimiento y técnicas avanzadas te ayudará a emplearlas mejor. Para seguir aprendiendo, explora estas fuentes:

  • Introduction to SQL: aprende a crear y consultar bases de datos relacionales con SQL.
  • SQL Fundamentals: adquiere las habilidades fundamentales de SQL que necesitas para interactuar con tus datos y consultarlos.
  • Learn SQL: hazte con los conocimientos de un lenguaje muy demandado que te permite gestionar datos en bases de datos relacionales.
  • Reporting in SQL: con este curso práctico, aprenderás a crear tus propios informes y paneles en SQL, y perfeccionarás tus habilidades de exploración, limpieza y validación de datos.

Obtén una Certificación Top SQL

Demuestra tus conocimientos básicos de SQL y avanza en tu carrera de datos.

Vikash Singh's photo
Author
Vikash Singh
LinkedIn

Profesional experimentado en Ciencia de Datos, Inteligencia Artificial, Analítica y Funciones Estratégicas con más de 18 años de experiencia en las áreas de -: Ciencia de datos, ML e IA ~ Ciencia de datos, Aprendizaje automático supervisado y no supervisado, Aprendizaje profundo, Modelado predictivo, Procesamiento del lenguaje natural (NLP), Modelado y análisis estadístico, Optimización, Estrategia empresarial y Analítica ~ Desarrollo y evaluación de modelos empresariales, Analítica descriptiva y de diagnóstico, EDA, Visualización, Análisis de causa raíz, Análisis de sensibilidad y de escenarios.

Preguntas frecuentes sobre SQL

¿Cuál es la diferencia entre LEFT JOIN y LEFT OUTER JOIN?

No hay diferencia: LEFT JOIN y LEFT OUTER JOIN hacen lo mismo y pueden usarse indistintamente.

¿Cuándo debería usar un LEFT JOIN?

Usa LEFT JOIN cuando necesites todos los registros de la tabla izquierda y los registros coincidentes de la tabla derecha. Los registros sin correspondencia en la tabla derecha tendrán valores NULL.

¿LEFT JOIN devolverá más filas que la tabla izquierda?

No. LEFT JOIN devuelve todas las filas de la tabla izquierda y las coincidentes de la derecha. No aumenta el número de filas de la tabla izquierda.

¿Cómo gestiono los valores NULL en los resultados de un LEFT JOIN?

Puedes usar la función COALESCE para sustituir valores ausentes por un valor predeterminado en el conjunto de resultados.

¿Cuáles son los casos de uso habituales de LEFT JOIN?

Los casos de uso más comunes incluyen identificar registros sin correspondencia, realizar comprobaciones de integridad de datos y combinar conjuntos de datos en procesos ETL.

Temas
SQL
Análisis de datos

Aprende SQL con DataCamp

Curso

Combinación de datos en SQL

4 h
339.2K
Mejora tus conocimientos de SQL y aprende a unir tablas, aplicar la teoría de conjuntos relacionales y trabajar con subconsultas.
Ver detallesRight Arrow
Iniciar Curso
Ver másRight Arrow
Relacionado

blog

20 preguntas principales de la entrevista sobre SQL Joins

Prepara tu entrevista SQL con esta lista de las preguntas más comunes sobre SQL Joins
Javier Canales Luna's photo

Javier Canales Luna

15 min

blog

SQL Server, PostgreSQL, MySQL... ¿cuál es la diferencia? ¿Por dónde empiezo?

En este tutorial, aprenderás algunas de las diferencias básicas entre los dialectos SQL y por dónde deberías empezar.
Mona Khalil's photo

Mona Khalil

5 min

Tutorial

Cómo utilizar un alias SQL para simplificar tus consultas

Explora cómo el uso de un alias SQL simplifica tanto los nombres de las columnas como los de las tablas. Aprende por qué utilizar un alias SQL es clave para mejorar la legibilidad y gestionar uniones complejas.
Allan Ouko's photo

Allan Ouko

9 min

Tutorial

Ejemplos y tutoriales de consultas SQL

Si quiere iniciarse en SQL, nosotros le ayudamos. En este tutorial de SQL, le presentaremos las consultas SQL, una potente herramienta que nos permite trabajar con los datos almacenados en una base de datos. Verá cómo escribir consultas SQL, aprenderá sobre
Sejal Jaiswal's photo

Sejal Jaiswal

15 min

Tutorial

Cómo utilizar la función COALESCE() en SQL (con ejemplos)

Aprende a utilizar la función COALESCE() de SQL para tratar valores nulos, combinar columnas y limpiar tus datos con ejemplos y consejos reales.
Travis Tang 's photo

Travis Tang

5 min

Tutorial

Seleccionar varias columnas en SQL

Aprende a seleccionar fácilmente varias columnas de una tabla de base de datos en SQL, o a seleccionar todas las columnas de una tabla en una simple consulta.
DataCamp Team's photo

DataCamp Team

3 min

Ver MásVer Más