sábado, 28 de maio de 2011

SQL (INNER JOIN)


JOIN

O Modelo relacional estabelece claramente as regras de divisão entre tabelas.

Ligar Tabelas

Ligação entre tabelas, operação normalmente designada por Join recorre a chave estrangeira ou secundária.
SELECT column_name(s)
FROM table_name1
INNER JOIN table_name2
ON table_name1.column_name=table_name2.column_name;
 
SQL sintaxe INNER JOIN






PS: INNER JOIN é o mesmo que JOIN.

INNER JOIN Exemplo

Observe a tabela:

P_Id
Apelido
Nome
Endereço
Cidade
1
Hansen
Ola
Timoteivn 10
Sandnes
2
Svendson
Tove
Borgvn 23
Sandnes
3
Pettersen
Kari
Storgt 20
Stavanger





As "ordens" da tabela:
O_id
OrderNo
P_Id
1
77895
3
2
44678
3
3
22456
1
4
24562
1
5
34764
15

Agora queremos listar todas as pessoas com todas as ordens e ordenar pelo apelido.

Nós usamos a seguinte instrução SELECT:
SELECT Pessoas.Apelido, Pessoas.Nome, Orders.OrderNo
FROM Pessoas
INNER JOIN Orders
ON Pessoas.P_Id=Orders.P_Id
ORDER BY Pessoas.Apelido;
 
 









O Resultado será este:
Apelido
Nome
OrderNo
Hansen
Ola
22456
Hansen
Ola
24562
Pettersen
Kari
77895
Pettersen
Kari
44678

O INNER JOIN é a palavra-chave linhas de retorno quando houver pelo menos um campo em ambas as tabelas.
Se houver linhas com "pessoas" que não têm registo em "Pedidos", essas linhas não serão listadas.

0 comentários:

Postar um comentário