Introducción a JOINS
¿Por qué son importantes los JOINS?
-
Permiten combinar información de varias tablas.
-
Evitan redundancia de datos.
-
Facilitan el análisis y la generación de reportes.
-
Sencillo de ejecutar. (Una vez que se comprende 😅)
INNER JOIN
-
Devuelve solo las filas que tienen coincidencias en ambas tablas.
-
Es el JOIN más utilizado.
SELECT
clientes.id
clientes.nombre,
ordenes.direccion
FROM clientes AS clientes
INNER JOIN ordenes AS ordenes
ON clientes.id = ordenes.cliente_id;LEFT JOIN
-
Devuelve todas las filas de la tabla de la izquierda y solo las coincidencias de la tabla de la derecha.
-
Si no hay coincidencia, muestra
NULLen los valores de la tabla derecha.
SELECT
clientes.id
clientes.nombre,
ordenes.direccion
FROM clientes AS clientes
LEFT JOIN ordenes AS ordenes
ON clientes.id = ordenes.cliente_id;RIGHT JOIN
-
Similar al LEFT JOIN, pero devuelve todas las filas de la tabla derecha y las coincidencias de la izquierda.
SELECT
clientes.id
clientes.nombre,
ordenes.direccion
FROM clientes AS clientes
RIGHT JOIN ordenes AS ordenes
ON clientes.id = ordenes.cliente_id;FULL JOIN
-
Devuelve todas las filas cuando hay coincidencia en cualquiera de las dos tablas.
-
Si no hay coincidencia, devuelve
NULLen la tabla que no tiene datos.
SELECT
clientes.id
clientes.nombre,
ordenes.direccion
FROM clientes AS clientes
FULL JOIN ordenes AS ordenes
ON clientes.id = ordenes.cliente_id;Optimización de Joins
✅ Usar claves correctamente: Asegurar que las columnas en la condición ON sean índices o claves primarias.
✅ Evitar FULL JOIN innecesarios: Generan muchos datos y pueden ser lentos.
✅ Usar WHERE para filtrar datos antes del JOIN: Ayuda a reducir el número de filas combinadas.
✅ Utilizar INNER JOIN si es posible: Es más eficiente que LEFT o FULL JOIN.
Joins & windows function
By Nicolás S. Navarro
Joins & windows function
- 171