SQL SELECT de várias tabelas

Esta instrução é usada para recuperar campos de várias tabelas. Para fazer isso, precisamos usar a consulta join para obter dados de várias tabelas.

Vejamos o exemplo da seleção de múltiplas tabelas:

 SELECT orders.order_id, suppliers.name FROM suppliers INNER JOIN orders ON suppliers.supplier_id = orders.supplier_id ORDER BY order_id;  

Tomemos três tabelas, duas tabelas de clientes denominadas cliente1 e cliente2 e a terceira tabela é a tabela de produtos.

Tabela Cliente1

Cus_id Nome1
1 Jack
2 Jill

Tabela Cliente2

Cus_id Nome2
1 Sandy
2 Vênus

Tabela de produtos

P_id Cus_id P_nome
1 1 Computador portátil
2 2 Telefone
3 P1 Caneta
4 P2 Caderno

Sintaxe de exemplo para selecionar em várias tabelas:

 SELECT p. p_id, p.cus_id, p.p_name, c1.name1, c2.name2 FROM product AS p LEFT JOIN customer1 AS c1 ON p.cus_id=c1.cus_id LEFT JOIN customer2 AS c2 ON p.cus_id = c2.cus_id  
P_id Cus_id P_nome P_nome P_nome
1 1 Computador portátil Jack NULO
2 2 Telefone Jill NULO
3 P1 Caneta NULO Sandy
4 P2 Caderno NULO Vênus