AD

¿Ya dominas lo básico? Un curso estructurado de SQL es la vía rápida para dar el salto.

Ver cursos de SQL en Udemy

Enlace de afiliado. No te cuesta nada extra.

🗄️Lecciones de SQL
Lección 16 / 50

INNER JOIN frente a LEFT JOIN

En esta lección verás la diferencia entre «solo lo que coincide» y «todo lo de la izquierda, coincida o no», que es la distinción que más consultas incorrectas provoca.

El JOIN normal (o INNER JOIN) devuelve únicamente las filas que tienen pareja en las dos tablas. LEFT JOIN devuelve todas las filas de la tabla izquierda y, cuando no hay pareja, rellena con NULL las columnas de la derecha.

El código de ejemplo lista estudiantes y sus préstamos. Carlos no tiene ninguno, pero con LEFT JOIN aparece igualmente, con el libro vacío. Cambia LEFT JOIN por JOIN y comprobarás que Carlos desaparece.

Hay una trampa muy fina: si pones una condición sobre la tabla derecha en el WHERE, el LEFT JOIN se comporta como un INNER JOIN, porque las filas rellenadas con NULL no superan ese filtro. La condición hay que ponerla dentro del ON.

Elegir mal entre estos dos es la causa habitual de informes que «pierden» registros: clientes sin pedidos, productos sin ventas o alumnos sin nota desaparecen silenciosamente del resultado sin que nadie note el error.

SQL
SALIDA

💡 El motor de SQL puede tardar unos segundos en cargarse la primera vez que ejecutas código.

Espacio publicitario (banner)
Espacio publicitario (en el artículo)