SQL

Cláusula LEFT JOIN

A cláusula LEFT JOIN no SQL é uma das maneiras mais comuns de combinar dados de duas ou mais tabelas. Com ela, você consegue trazer todos os registros de uma tabela (à esquerda), além dos dados relacionados de outra tabela (à direita). Mesmo que não haja correspondência entre as tabelas, os registros da tabela à esquerda ainda serão exibidos, e os valores da tabela da direita aparecerão como NULL.

1. O que é a cláusula LEFT JOIN?

A LEFT JOIN retorna todos os registros da tabela à esquerda da junção, junto com os registros correspondentes da tabela à direita. Se não houver correspondência na tabela da direita, o SQL preenche os valores com NULL. É ideal para consultas onde você deseja garantir que todos os dados da tabela à esquerda sejam exibidos, independentemente da correspondência com a tabela à direita.

left join

Sintaxe básica:

SELECT colunas
FROM tabela1
LEFT JOIN tabela2
ON tabela1.coluna_comum = tabela2.coluna_comum;

tabela1: A tabela à esquerda, cujos registros aparecerão sempre no resultado.

tabela2: A tabela à direita, cujos registros aparecerão apenas se houver correspondência.

2. Exemplo de LEFT JOIN

Imagine que você tem duas tabelas: clientes e pedidos. Queremos exibir todos os clientes, incluindo aqueles que ainda não fizeram nenhum pedido.

SELECT clientes.nome, pedidos.numero_pedido
FROM clientes
LEFT JOIN pedidos
ON clientes.id = pedidos.cliente_id;

Neste exemplo:

  • A tabela clientes está à esquerda, então todos os clientes aparecerão no resultado;

  • Se um cliente não tiver um pedido associado, a coluna numero_pedido aparecerá como NULL.

3. Quando usar LEFT JOIN?

Você deve usar LEFT JOIN quando precisa garantir que todos os registros da tabela à esquerda sejam exibidos, mesmo que não haja dados relacionados na tabela à direita. Alguns casos práticos incluem:

  • Clientes e pedidos: Ver todos os clientes, mesmo os que não fizeram pedidos;

  • Produtos e vendas: Listar todos os produtos, independentemente de terem sido vendidos;

  • Estudantes e cursos: Mostrar todos os alunos, mesmo que alguns não estejam matriculados em cursos.

4. Diferença entre LEFT JOIN e INNER JOIN

  • LEFT JOIN: Retorna todos os registros da tabela à esquerda e os correspondentes da tabela à direita (com NULL se não houver correspondência);

  • INNER JOIN: Retorna somente os registros que têm correspondência em ambas as tabelas.

5. Exemplo prático com LEFT JOIN

Vamos dizer que temos uma tabela alunos e uma tabela matriculas, e queremos listar todos os alunos, independentemente de estarem matriculados em cursos.

SELECT alunos.nome, matriculas.curso
FROM alunos
LEFT JOIN matriculas
ON alunos.id = matriculas.aluno_id;

Aqui, todos os alunos serão exibidos, e os que não estão matriculados terão NULL no campo curso.

Resumo

  • LEFT JOIN: Retorna todos os registros da tabela à esquerda, mesmo que não haja correspondência na tabela à direita;

  • Ideal para quando você quer garantir que todos os dados de uma tabela principal (à esquerda) sejam exibidos, com ou sem correspondência.

Com a cláusula LEFT JOIN, você pode combinar tabelas de maneira flexível, garantindo que nenhuma informação da tabela à esquerda seja excluída. Agora que você entende como ela funciona, pode utilizá-la para criar consultas eficientes e detalhadas no seu banco de dados!

Dúvidas ou sugestões? Deixem nos comentários! Para mais dicas, acesse o nosso canal no YouTube:
https://youtube.com/criandobits

Tags:

O SEU COMPUTADOR ESTÁ TRAVANDO, DANDO "TELA AZUL" E DOR DE CABEÇA?

Aprenda a consertar o próprio computador como um profissional!

Especialize-se em manutenção preventiva e corretiva, diagnósticos de defeitos e upgrades com aulas passo a passo sem enrolação.

Torne-se também um técnico diferenciado e conquiste o emprego dos seus sonhos com este curso completo de Montagem e Manutenção de Desktops e Notebooks.

Clique na imagem abaixo e confira mais detalhes do curso:

Super Técnico 2.0

CLIQUE AQUI E SAIBA MAIS

Sobre o Autor

Benedito Silva Júnior
Benedito Silva Júnior

Bacharel em Sistemas de Informação e apaixonado por tecnologias e games do tempo da vovó!

0 Comentários

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *