SQL. Referencia entre tabelas

Delphi

06/03/2005

Tenho uma tabela de cliente (codigo, nome)
e tenho outra de processo(Numero, requerido_codigo(faz referência com a tabela de cliente(codigo)), requerente(faz referência com a tabela de cliente(codigo)).

Duvida como montar uma VIEW, para exibir o nome dos cliente(requerido e requerente) e o número.


Sistemald

Sistemald

Curtidas 0

Respostas

Sistemald

Sistemald

06/03/2005

Tentei isto:

select pessoa.*,processo.*
from PROCESSO
left join pessoa on (requerido_Pessoa_codigo = codigo)
left join pessoa on (requerente_Pessoa_codigo = codigo)

Mas não da certo


GOSTEI 0
Vprates

Vprates

06/03/2005

Impressão minha ou o kra respondeu a propria pergunta... :shock:


GOSTEI 0
Emerson Nascimento

Emerson Nascimento

06/03/2005

select processo.*, rqd.*, rqt.*
from PROCESSO p
left join pessoa rqd on (rqd.codigo = p.requerido_Pessoa_codigo)
left join pessoa rqt on (rqt.codigo = p.requerente_Pessoa_codigo)

ao invés de *, faça a seleção somente dos campos necessários.


GOSTEI 0
Emerson Nascimento

Emerson Nascimento

06/03/2005

corrigindo:

select p.*, rqd.*, rqt.*
from PROCESSO p
left join pessoa rqd on (rqd.codigo = p.requerido_Pessoa_codigo)
left join pessoa rqt on (rqt.codigo = p.requerente_Pessoa_codigo)

ao invés de *, faça a seleção somente dos campos necessários.


GOSTEI 0
Sistemald

Sistemald

06/03/2005

Observe que tanto o Requerente como o requerido ficam na mesma tabela(PESSOA)

Na tabela de processo quardo o codigo para o requerido e para o requerente.


GOSTEI 0
Sistemald

Sistemald

06/03/2005

Obs.: Uso Firebird 1.5 e Delphi 7, MDO(https://sourceforge.net/projects/mdo) para Acesso.


GOSTEI 0
Emerson Nascimento

Emerson Nascimento

06/03/2005

o código que eu te passei não funcionou?

[i:319879e2a0]select p.*, rqd.nome nomerequerido, rqt.nome nomerequerente
from PROCESSO p
left join pessoa rqd on (rqd.codigo = p.requerido_Pessoa_codigo)
left join pessoa rqt on (rqt.codigo = p.requerente_Pessoa_codigo)[/i:319879e2a0]

qual a mensagem de erro?


GOSTEI 0
Sistemald

Sistemald

06/03/2005

select p.*, [b:02c235ef4c]rqd[/b:02c235ef4c].nome nomerequerido, [b:02c235ef4c]rqt[/b:02c235ef4c].nome nomerequerente

Não existe duas tabelas, é uma tabela de onde será tirado o requerido e o requerente.

Obs-> Tenho a tabela de processo e a de pessoas.

Na tabela de pessoas terão os requeridos e os requerentes(cadastrados junto na mesma tabelas)


GOSTEI 0
Emerson Nascimento

Emerson Nascimento

06/03/2005

você testou o a instrução?

que bando de dados você está utilizando?


GOSTEI 0
Sandra

Sandra

06/03/2005

Impressão minha ou o kra respondeu a propria pergunta... :shock:

Foi impressão sua :D . Apenas ele respondeu seu próprio tópico, complementando o código que tentou e não deu certo. ;)


GOSTEI 0
POSTAR