[firebase-br] RES: SQL - select em tabela com 3 chaves estrangeiras, com mesma referência

Felix felix.sol em terra.com.br
Sex Set 24 09:13:59 -03 2010


Nem sei se vou digitar besteira, mas tenta:

select * from T2
left outer join T1 on ((T2_fun=T1_cod) or (T2_med=T1_cod) or
(T2_coord=T1_cod))
where T2_cod=<PARÂMETRO>

Fco. Felix
Desenvolvimento de Sistemas
www.soltecnologia.com.br

-----Mensagem original-----
De: lista-bounces em firebase.com.br [mailto:lista-bounces em firebase.com.br] Em
nome de Roberto Teruo Kobayashi
Enviada em: sexta-feira, 24 de setembro de 2010 08:58
Para: lista em firebase.com.br
Assunto: [firebase-br] SQL - select em tabela com 3 chaves estrangeiras, com
mesma referência

Senhores, preciso de uma ajuda. Estou usando o Firebird 2.1 para produzir um
programa para a empresa onde trabalho e estou quebrando a cabeça com um
Select. Descrevo a situação a seguir:

Tenho duas tabelas:

T1 -> Tabela contendo a listagem de funcionários
T2 -> Tabela com informações sobre exames admissionais

T1
T1_cod - código do registro
T1_nome - nome do funcionário

T2
T2_cod - código do registro
*T2_fun - funcionário examinado
*T2_med - médico examinador
*T2_coord - médico coordenador

Os campos com * são Chaves Estrangeiras, que tem como referência o campo
T1_cod, da tabela de funcionários.

O problema acontece quando tento usar o seguinte Select:

select * from T2
left outer join T1 on T2_fun=T1_cod
left outer join T1 on T2_med=T1_cod
left outer join T1 on T2_coord=T1_cod
where T2_cod=<PARÂMETRO>

Quando executo o select, o Firbird retorna a seguinte mensagem:

SQL Message : -204
Undefined name

Engine Code : 335544569
Engine Message :
Dynamic SQL Error
SQL error code = -204
Ambiguous field name between table T1 and table T1
T1_cod

O que estou fazendo de errado?
______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para saber como gerenciar/excluir seu cadastro na lista, use:
http://www.firebase.com.br/fb/artigo.php?id=1107
Para consultar mensagens antigas: http://firebase.com.br/pesquisa





Mais detalhes sobre a lista de discussão lista