Sobes.tech
Junior

Qual é a diferença entre LEFT JOIN e INNER JOIN?

sobes.tech IA

Resposta da IA

INNER JOIN devolve apenas as linhas que têm correspondências em ambas as tabelas combinadas.

LEFT JOIN (ou LEFT OUTER JOIN) devolve todas as linhas da tabela da esquerda e as linhas correspondentes da tabela da direita. Se não houver correspondências na tabela da direita, os valores NULL são retornados para as colunas da tabela da direita.

Exemplo:

Suponha que existam duas tabelas: Funcionários (id, nome) e Departamentos (id, nome, chefe_id).

INNER JOIN Funcionários E Departamentos ON Funcionários.id = Departamentos.chefe_id

Retornará apenas os funcionários que são chefes de departamento.

LEFT JOIN Funcionários E Departamentos ON Funcionários.id = Departamentos.chefe_id

Retornará todos os funcionários. Para aqueles que são chefes de departamento, também serão incluídos os dados do departamento. Para os funcionários que não são chefes, as colunas da tabela Departamentos conterão NULL.