consulta, join com 2 foreign

02/08/2004

0

SQL

Pessoal, estou com uma coisa chata de resolver aqui..

tenho 2 foreign em uma tabela principal que aponta para uma primary de uma tabela secundaria.

Eu queria de saber como voces fariam ´join´ para mostrar os dados da secundaria que esta definida nessa primaria.

abaixo a estrutura das tabelas..
no final coloquei minha solução(que eu acho que não é a mais correta)

------script-----
create table Funcionario(
Cod_Funcint Primary Key,
Nome_Funcchar(30)
)
insert funcionario values (1,´Alexandre´)
insert funcionario values (2,´Marcos´)
insert funcionario values (3,´Sueli´)
insert funcionario values (4,´Ricardo´)
insert funcionario values (5,´Thiago´)

create table Servico(
Cod_Servint Primary Key,
Contatoint,
Tecnicoint,
CONSTRAINT FK_Contato Foreign Key (Contato) References Funcionario(Cod_Func),
CONSTRAINT FK_Tecnico Foreign Key (Tecnico) References Funcionario(Cod_Func)
)
insert servico values (1,1,2)
insert servico values (2,1,3)
insert servico values (3,1,4)
insert servico values (4,2,1)
insert servico values (5,2,3)
insert servico values (6,2,5)
insert servico values (7,5,4)

----com subquery:
select
(select nome_func from funcionario f where f.cod_func = s.tecnico),
(select nome_func from funcionario f where f.cod_func = s.contato)
from servico s

--com join????


Alesp84

Alesp84

Responder

Posts

02/08/2004

Daniela

Veja
select S.*, T.*, C.* from Servico S
inner join Funcionario T on S.Tecnico = T.Cod_Func
inner join Funcionario C on S.Contato = C.Cod_Func


Responder

03/08/2004

Alesp84

Muuuuuuito obrigado danielaaa..
mto obrigado mesmo
vc salvou minha vida :)


Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar