Junior
Qual é a diferença entre LEFT JOIN e RIGHT JOIN?
sobes.tech IA
Resposta da IA
LEFT JOIN seleciona todas as linhas da tabela esquerda e as linhas correspondentes da direita. Se não houver correspondência na tabela direita, as colunas da tabela direita terão valores NULL.
RIGHT JOIN seleciona todas as linhas da tabela direita e as linhas correspondentes da esquerda. Se não houver correspondência na tabela esquerda, as colunas da tabela esquerda terão valores NULL.
Na prática, RIGHT JOIN é um espelho do LEFT JOIN. O resultado de RIGHT JOIN (tabela A JOIN tabela B) é idêntico ao resultado de LEFT JOIN (tabela B JOIN tabela A) com as colunas trocadas.
Exemplo SQL:
-- LEFT JOIN
SELECT *
FROM TabelaA
LEFT JOIN TabelaB ON TabelaA.id = TabelaB.id;
-- RIGHT JOIN
SELECT *
FROM TabelaA
RIGHT JOIN TabelaB ON TabelaA.id = TabelaB.id;
Visualização:
| Tipo de JOIN | Linhas incluídas da tabela esquerda | Linhas incluídas da tabela direita |
|---|---|---|
| LEFT JOIN | Todas | Correspondentes (ou NULL) |
| RIGHT JOIN | Correspondentes (ou NULL) | Todas |