Documente Academic
Documente Profesional
Documente Cultură
Buscar
post favorito
comentrios
Gostei (4)
Curtir
(0)
As junes entre duas ou mais tabelas podem ser realizadas atravs de:
a.
Cross join
b.
Inner join
http://www.devmedia.com.br/inner-cross-left-rigth-e-full-joins/21016
1/17
22/4/2014
c.
d.
e.
As questes so duas:
i.
ii.
Figura 1
Podemos notar pelo modelo que pode existir no banco de dados funcionrios sem
cargos e cargos sem funcionrios. Para exemplificar melhor, observe o contedo das
tabelas na figura 2 abaixo:
http://www.devmedia.com.br/inner-cross-left-rigth-e-full-joins/21016
2/17
22/4/2014
Figura 2
Assim, fazemos:
CROSS JOIN
Quando queremos juntar duas ou mais tabelas por cruzamento. Ou seja, para cada
linha da tabela FUNCIONARIO queremos todos os CARGOS ou vice-versa.
http://www.devmedia.com.br/inner-cross-left-rigth-e-full-joins/21016
3/17
22/4/2014
Figura 3
INNER JOIN
Quando queremos juntar duas ou mais tabelas por coincidncia. Para cada linha da
tabela FUNCINARIO queremos o CARGO correspondente que internamente (INNER), em
seus valores de atributos, coincidam. No caso de FUNIONRIO e CARGO os atributos
internos coincidentes so codigoCargo na tabela CARGO e codigoCargo na tabela
FUNCIONARIO. Veja tambm a Figura 1 e a Figura 2, l voc notar que codigoCargo
chave primria da tabela CARGO e chave estrangeira na tabela FUNCIONARIO. Para
efetivarmos a juno das duas tabelas se far necessrio ligar (ON) as duas tabelas por
seus atributos internos (INNER) coincidentes.
http://www.devmedia.com.br/inner-cross-left-rigth-e-full-joins/21016
4/17
22/4/2014
Figura 4
http://www.devmedia.com.br/inner-cross-left-rigth-e-full-joins/21016
5/17
22/4/2014
Figura 5
Uma observao importante que a ordem da ligao (ON) no faz diferena, ou seja:
ON (F.codCargo = C.codCargo) exatamente igual a ON (C.codCargo = F.codCargo)
http://www.devmedia.com.br/inner-cross-left-rigth-e-full-joins/21016
6/17
22/4/2014
Figura 6
Uma observao importante que a ordem da ligao (ON) no faz diferena, ou seja:
ON (F.codCargo = C.codCargo) exatamente igual a ON (C.codCargo = F.codCargo)
http://www.devmedia.com.br/inner-cross-left-rigth-e-full-joins/21016
7/17
22/4/2014
Figura 7
Uma observao importante que a ordem da ligao (ON) no faz diferena, ou seja:
ON (F.codCargo = C.codCargo) exatamente igual a ON (C.codCargo = F.codCargo).
Simples assim!
Abaixo segue o SCRIPT SQL de criao das tabelas, seus relacionamentos, seu
povoamento e dos exemplos utilizados. Todos os exemplos deste artigo foram testados
no SGBDR MS-SQL Server 2008 Express.
8/17
22/4/2014
NOT NULL,
NULL,
PRIMARY KEY(CodCargo)
)
GO
9/17
22/4/2014
NULL,
PRIMARY KEY(Matricula),
FOREIGN KEY (CodCargo) REFERENCES CARGO (CodCargo)
)
GO
, 800.00)
GO
http://www.devmedia.com.br/inner-cross-left-rigth-e-full-joins/21016
10/17
22/4/2014
, ''''''''C1'''''''')
GO
-----------------------------------------
LOGIN
-- EXEMPLOS DE JOIN ABORDADOS NO ARTIGO
-----------------------------------------
GO
11/17
22/4/2014
,C.NomeCargo
FROM
CROSS JOIN
CARGO
AS C
FUNCIONARIO AS F
CARGO
AS C
-- LEFT OUTER JOIN ou simplesmente LEFT JOIN ( Juno Externa Esquerda ) - Veja
Figura 5
SELECT F.nomeFuncionario
,C.nomeCargo
FROM
FUNCIONARIO AS F
AS C ON ( C.codCargo = F.codCargo )
-- RIGHT OUTER JOIN ou simplesmente RIGHT JOIN ( Juno Externa Direita) - Veja
Figura 6
SELECT F.nomeFuncionario
,C.nomeCargo
FROM
FUNCIONARIO AS F
http://www.devmedia.com.br/inner-cross-left-rigth-e-full-joins/21016
12/17
22/4/2014
AS C ON ( F.codCargo = C.codCargo )
FUNCIONARIO AS F
AS C ON ( C.codCargo = F.codCargo )
-- s isso!
Avante e at a prxima.
http://www.devmedia.com.br/inner-cross-left-rigth-e-full-joins/21016
13/17
22/4/2014
(0)
GO
http://www.devmedia.com.br/inner-cross-left-rigth-e-full-joins/21016
14/17
22/4/2014
GO
[h +1 ano] - Responder
Publicidade
Servios
Inclua um comentrio
Adicionar aos Favoritos
Marcar como lido/assistido
Incluir anotao pessoal
+Banco de
dados
http://www.devmedia.com.br/inner-cross-left-rigth-e-full-joins/21016
15/17
22/4/2014
Mais posts
Artigo
Criando um CRUD em C#
Video aula
16/17
22/4/2014
Video aula
DevMedia
Curtir
http://www.devmedia.com.br/inner-cross-left-rigth-e-full-joins/21016
17/17