✖️ CROSS JOIN no SQL

Introdução

O comando CROSS JOIN é utilizado para realizar o produto cartesiano entre duas tabelas.

Isso significa que cada registro da primeira tabela será combinado com todos os registros da segunda tabela.

📌 CROSS JOIN gera todas as combinações possíveis entre duas tabelas.

Conceito de Produto Cartesiano

Se uma tabela possui 3 registros e outra possui 4 registros, o resultado terá:


3 x 4 = 12 registros
          

Cada linha da primeira tabela será combinada com todas as linhas da segunda tabela.

Sintaxe Básica


SELECT *

FROM tabela1

CROSS JOIN tabela2;
          

Exemplo de Tabelas


CORES

+-------+

| Cor   |

+-------+

| Azul  |

| Verde |

+-------+



TAMANHOS

+---------+

| Tamanho |

+---------+

| P       |

| M       |

| G       |

+---------+
          

Aplicando CROSS JOIN


SELECT *

FROM cores

CROSS JOIN tamanhos;
          

Resultado:


Azul  - P

Azul  - M

Azul  - G

Verde - P

Verde - M

Verde - G
          

CROSS JOIN com Campos Específicos


SELECT

cores.cor,

tamanhos.tamanho


FROM cores

CROSS JOIN tamanhos;
          

CROSS JOIN x INNER JOIN

CROSS JOIN INNER JOIN
Combina todos os registros Combina registros relacionados
Não utiliza condição ON Utiliza condição ON
Pode gerar muitos dados Retorna dados específicos

Quando Utilizar CROSS JOIN?

Exemplo Prático - Produtos


SELECT

produto,

cor,

tamanho


FROM produtos

CROSS JOIN cores

CROSS JOIN tamanhos;
          

Cria combinações possíveis de produtos, cores e tamanhos.

Cuidados com CROSS JOIN

Cuidado Motivo
Muitas linhas Pode gerar milhões de registros
Baixo desempenho Consultas podem ficar lentas
Uso inadequado Pode indicar erro de modelagem

Erros Comuns

Erro Problema
Usar sem necessidade Excesso de dados
Confundir com INNER JOIN Resultado diferente do esperado
Ignorar tamanho das tabelas Problemas de desempenho

Boas Práticas

Resumo da Aula

🎓 Aula concluída! Agora você conhece o CROSS JOIN e sabe quando utilizar combinações completas entre tabelas no SQL.