JOIN (INNER y LEFT)
Combina filas de dos tablas cuando coincide una clave. Un INNER JOIN conserva solo las coincidencias; un LEFT JOIN conserva todas las filas de la tabla izquierda.
Sintaxis
SELECT … FROM a JOIN b ON a.key = b.key;SELECT … FROM a LEFT JOIN b ON a.key = b.key;
Ejemplo
SELECT c.last_name, o.order_date FROM customers AS c JOIN orders AS o ON o.customer_id = c.customer_id;
Cada pedido con el apellido de su cliente. Los pedidos sin cliente quedan fuera.
Tablas usadas: customers, orders. Pruébalo en una lección de abajo.
Errores comunes
- Olvidar la condición ON crea un CROSS JOIN: cada fila emparejada con todas las demás.
- Filtrar la tabla derecha en WHERE convierte un LEFT JOIN otra vez en un INNER JOIN.