🔗 INNER JOIN no SQL

Introdução

O comando INNER JOIN é utilizado para combinar dados de duas ou mais tabelas relacionadas.

Ele retorna somente os registros que possuem correspondência entre as tabelas envolvidas.

📌 INNER JOIN retorna apenas dados que possuem relacionamento entre as tabelas.

Como funciona?

O INNER JOIN compara uma coluna de uma tabela com uma coluna de outra tabela através da condição ON.


Tabela Clientes

        ID


          ↓


Tabela Pedidos

     Cliente_ID
          

Sintaxe Básica


SELECT

tabela1.coluna,

tabela2.coluna


FROM tabela1


INNER JOIN tabela2

ON tabela1.id = tabela2.id;
          

Exemplo de Tabelas


CLIENTES

+----+----------+

| ID | Nome     |

+----+----------+

| 1  | Ana      |

| 2  | Carlos   |

| 3  | Pedro    |

+----+----------+



PEDIDOS

+----+------------+-------+

| ID | Cliente_ID | Valor |

+----+------------+-------+

| 1  | 1          | 500   |

| 2  | 2          | 700   |

| 3  | 5          | 300   |

+----+------------+-------+
          

Utilizando INNER JOIN


SELECT

clientes.nome,

pedidos.valor


FROM clientes


INNER JOIN pedidos

ON clientes.id = pedidos.cliente_id;
          

Resultado:


Ana     | 500

Carlos  | 700
          

O pedido do cliente ID 5 não aparece porque não existe cliente correspondente.

INNER JOIN com Alias


SELECT

c.nome,

p.valor


FROM clientes c


INNER JOIN pedidos p

ON c.id = p.cliente_id;
          

Alias deixam a consulta mais simples e organizada.

INNER JOIN entre três tabelas


SELECT

clientes.nome,

produtos.nome


FROM clientes


INNER JOIN pedidos

ON clientes.id = pedidos.cliente_id


INNER JOIN produtos

ON pedidos.produto_id = produtos.id;
          

Permite consultar informações relacionadas em várias tabelas.

INNER JOIN x CROSS JOIN

INNER JOIN CROSS JOIN
Relaciona dados Combina tudo
Usa condição ON Não usa ON
Retorna correspondências Retorna produto cartesiano

Aplicações no Mundo Real

Sistema Relacionamento
E-commerce Clientes e pedidos
Banco Clientes e contas
Escola Alunos e matrículas
Hospital Pacientes e consultas

Erros Comuns

Erro Problema
Esquecer condição ON Produto cartesiano
Relacionar campos errados Dados incorretos
Usar tabelas sem relacionamento Consulta sem sentido
Selecionar colunas duplicadas Resultado confuso

Boas Práticas

Resumo da Aula

🎓 Aula concluída! Agora você sabe utilizar INNER JOIN para consultar dados relacionados entre tabelas no MySQL.