JOIN (INNER e LEFT)
Combine linhas de duas tabelas onde uma chave coincide. Um INNER JOIN mantém só as correspondências; um LEFT JOIN mantém todas as linhas da tabela da esquerda.
Sintaxe
SELECT … FROM a JOIN b ON a.key = b.key;SELECT … FROM a LEFT JOIN b ON a.key = b.key;
Exemplo
SELECT c.last_name, o.order_date FROM customers AS c JOIN orders AS o ON o.customer_id = c.customer_id;
Cada pedido com o sobrenome do cliente. Pedidos sem cliente ficam de fora.
Tabelas usadas: customers, orders. Experimente em uma lição abaixo.
Erros comuns
- Esquecer a condição ON cria um cross join: cada linha combinada com todas as outras.
- Filtrar a tabela da direita no WHERE transforma um LEFT JOIN de volta em um INNER JOIN.