Explique as diferenças entre as operações de junção LEFT JOIN, RIGHT JOIN e INNER JOIN em SQL.
sobes.tech IA
Resposta da IA
Nas operações SQL, JOINs são usados para combinar linhas de duas tabelas com base em uma coluna relacionada.
-
INNER JOIN retorna apenas as linhas que têm correspondências em ambas as tabelas.
-
LEFT JOIN (ou LEFT OUTER JOIN) retorna todas as linhas da tabela da esquerda e as linhas correspondentes da tabela da direita. Se não houver correspondência na tabela da direita, os campos dessa tabela serão NULL.
-
RIGHT JOIN (ou RIGHT OUTER JOIN) retorna todas as linhas da tabela da direita e as correspondentes da esquerda. Se não houver correspondência na tabela da esquerda, os campos dessa tabela serão NULL.
Exemplo:
SELECT A.id, B.value
FROM A
LEFT JOIN B ON A.id = B.a_id;
Esta consulta retornará todos os registros da tabela A, e apenas os correspondentes de B. Se para um registro de A não houver correspondência em B, os campos de B serão NULL.
Assim:
- INNER JOIN — interseção das tabelas pela condição.
- LEFT JOIN — tudo da esquerda + correspondências à direita.
- RIGHT JOIN — tudo da direita + correspondências à esquerda.