Tutorial MySQL

MySQL HOME Introdução ao MySQL MySQL RDBMS

MySQL SQL

MySQL SQL MySQL SELECIONAR MySQL ONDE MySQL E, OU, NÃO MySQL ORDER BY MySQL INSERT INTO Valores NULL do MySQL ATUALIZAÇÃO DO MySQL MySQL EXCLUIR MySQL LIMIT MySQL MIN e MAX MySQL COUNT, AVG, SUM MySQL LIKE Caracteres curinga do MySQL MySQL IN MySQL ENTRE Aliases do MySQL Junções do MySQL MySQL INNER JOIN MySQL LEFT JOIN MySQL RIGHT JOIN MySQL CROSS JOIN Auto-ingresso do MySQL MySQL UNION MySQL GROUP BY MySQL TENDO O MySQL EXISTE MySQL QUALQUER, TODOS MySQL INSERT SELECT CASO MySQL Funções Nulas do MySQL Comentários do MySQL Operadores MySQL

Banco de dados MySQL

MySQL Criar banco de dados MySQL Drop DB MySQL Criar Tabela Tabela de descarte do MySQL Tabela de alteração do MySQL Restrições do MySQL MySQL não nulo MySQL exclusivo Chave primária do MySQL Chave estrangeira do MySQL Verificação do MySQL Padrão do MySQL MySQL Criar Índice Incremento automático do MySQL Datas do MySQL Visualizações do MySQL

Referências do MySQL

Tipos de dados MySQL Funções do MySQL

Exemplos MySQL

Exemplos MySQL Teste do MySQL Exercícios do MySQL

Palavra- chave MySQL CROSS JOIN


Palavra-chave SQL CROSS JOIN

A palavra- CROSS JOINchave retorna todos os registros de ambas as tabelas (tabela1 e tabela2).

MySQL CROSS JOIN

Sintaxe CROSS JOIN

SELECT column_name(s)
FROM table1
CROSS JOIN table2;

Nota: CROSS JOIN pode potencialmente retornar conjuntos de resultados muito grandes!


Banco de dados de demonstração

Neste tutorial, usaremos o conhecido banco de dados de exemplo Northwind.

Abaixo está uma seleção da tabela "Clientes":

CustomerID CustomerName ContactName Address City PostalCode Country
1

Alfreds Futterkiste Maria Anders Obere Str. 57 Berlin 12209 Germany
2 Ana Trujillo Emparedados y helados Ana Trujillo Avda. de la Constitución 2222 México D.F. 05021 Mexico
3 Antonio Moreno Taquería Antonio Moreno Mataderos 2312 México D.F. 05023 Mexico

E uma seleção da tabela "Pedidos":

OrderID CustomerID EmployeeID OrderDate ShipperID
10308 2 7 1996-09-18 3
10309 37 3 1996-09-19 1
10310 77 8 1996-09-20 2


Exemplo de CROSS JOIN do MySQL

A seguinte instrução SQL seleciona todos os clientes e todos os pedidos:

Exemplo

SELECT Customers.CustomerName, Orders.OrderID
FROM Customers
CROSS JOIN Orders;

Observação: a palavra- CROSS JOINchave retorna todos os registros correspondentes de ambas as tabelas, independentemente de a outra tabela corresponder ou não. Portanto, se houver linhas em "Clientes" que não tenham correspondências em "Pedidos" ou se houver linhas em "Pedidos" que não tenham correspondências em "Clientes", essas linhas também serão listadas.

Se você adicionar uma WHEREcláusula (se tabela1 e tabela2 tiverem um relacionamento), CROSS JOINproduzirá o mesmo resultado que a INNER JOINcláusula:

Exemplo

SELECT Customers.CustomerName, Orders.OrderID
FROM Customers
CROSS JOIN Orders
WHERE Customers.CustomerID=Orders.CustomerID;