Junior — Middle
Qual é a diferença entre uma junção interna e uma junção externa direita em SQL?
sobes.tech IA
Resposta da IA
No SQL, a junção interna (INNER JOIN) e a junção externa direita (RIGHT OUTER JOIN) diferem na forma como as linhas das tabelas são incluídas no resultado.
-
INNER JOIN retorna apenas as linhas que têm correspondências em ambas as tabelas de acordo com a condição de junção.
-
RIGHT OUTER JOIN retorna todas as linhas da tabela da direita e as linhas correspondentes da tabela da esquerda. Se não houver correspondência para uma linha da tabela da direita na esquerda, os campos da tabela da esquerda serão NULL.
Exemplo:
SELECT * FROM A INNER JOIN B ON A.id = B.a_id;
-- Retorna apenas as linhas onde A.id corresponde a B.a_id
SELECT * FROM A RIGHT OUTER JOIN B ON A.id = B.a_id;
-- Retorna todas as linhas de B, mesmo que não haja correspondência em A