Middle
Qual é a diferença entre JOIN, LEFT JOIN e RIGHT JOIN?
sobes.tech IA
Resposta da IA
JOIN é uma operação em SQL que combina linhas de duas tabelas com base na condição de correspondência de valores nas colunas especificadas.
- JOIN (ou INNER JOIN) retorna apenas as linhas que têm correspondências em ambas as tabelas.
- LEFT JOIN retorna todas as linhas da tabela da esquerda e as linhas correspondentes da direita. Se não houver correspondências, as colunas da tabela da direita serão NULL.
- RIGHT JOIN retorna todas as linhas da tabela da direita e as correspondentes da esquerda, com NULL onde não há correspondências.
Exemplo:
SELECT * FROM A
JOIN B ON A.id = B.a_id; -- apenas correspondências
SELECT * FROM A
LEFT JOIN B ON A.id = B.a_id; -- tudo de A + correspondências de B
SELECT * FROM A
RIGHT JOIN B ON A.id = B.a_id; -- tudo de B + correspondências de A