Olá a todos.
Desde já agradeço a quem puder ajudar de qualquer forma.
Preciso criar uma view que retorne em uma coluna específica, dados que podem vir
de duas tabelas diferentes baseado em uma condição.
Vejam:
-----------------------------
Tabela Anunciantes:
anun_id
anun_tipo
anun_responsavel
-----------------------------
Tabela Contrato:
cont_id
cont_nome_negocio
cont_anun_id
-----------------------------
Tabela Dados_pf
dpf_id
dpf_nome
dpf_anun_id
-----------------------------
Tabela Dados_pj
dpj_id
dpj_razao_social
dpf_anun_id
-----------------------------
View Anunciantes
anun_responsavel
cont_tipo
dpf_nome OU dpj_razao_social
Quero que na linha onde a o campo "cont_tipo" conter "pf" seja exibido o conteúdo "dpf_nome" da tabela "dados_pf"
e onde conter "pj" seja exibido o conteúdo "dpj_razao_social" da coluna "dados_pj"
-----------------------------
Usei este código:
SELECT anun_responsavel, anun_tipo, dpf_nome, dpj_razao_social, cont_nome_negocio
FROM anunciantes, dados_pf, dados_pj, contratos
WHERE anunciantes.anun_id=contratos.cont_anun_id
AND anunciantes.anun_id=dados_pj.dpj_anun_id
OR anunciantes.anun_id=dados_pf.dpf_anun_id
ORDER BY anun_responsavel ASC
Porém fiz um teste com tres registros, e não deu certo, aparecem muitos e com combinações erradas.
alguém pode me ajudar?
Obrigado.
Desde já agradeço a quem puder ajudar de qualquer forma.
Preciso criar uma view que retorne em uma coluna específica, dados que podem vir
de duas tabelas diferentes baseado em uma condição.
Vejam:
-----------------------------
Tabela Anunciantes:
anun_id
anun_tipo
anun_responsavel
-----------------------------
Tabela Contrato:
cont_id
cont_nome_negocio
cont_anun_id
-----------------------------
Tabela Dados_pf
dpf_id
dpf_nome
dpf_anun_id
-----------------------------
Tabela Dados_pj
dpj_id
dpj_razao_social
dpf_anun_id
-----------------------------
View Anunciantes
anun_responsavel
cont_tipo
dpf_nome OU dpj_razao_social
Quero que na linha onde a o campo "cont_tipo" conter "pf" seja exibido o conteúdo "dpf_nome" da tabela "dados_pf"
e onde conter "pj" seja exibido o conteúdo "dpj_razao_social" da coluna "dados_pj"
-----------------------------
Usei este código:
SELECT anun_responsavel, anun_tipo, dpf_nome, dpj_razao_social, cont_nome_negocio
FROM anunciantes, dados_pf, dados_pj, contratos
WHERE anunciantes.anun_id=contratos.cont_anun_id
AND anunciantes.anun_id=dados_pj.dpj_anun_id
OR anunciantes.anun_id=dados_pf.dpf_anun_id
ORDER BY anun_responsavel ASC
Porém fiz um teste com tres registros, e não deu certo, aparecem muitos e com combinações erradas.
alguém pode me ajudar?
Obrigado.
- Anexos
- Imagen Problema BD VIEW.zip
- Você não tem permissão para fazer download dos arquivos anexados.
- (193 Kb) Baixado 11 vez(es)