Sobes.tech
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