Fórum dificuldade com select simples #162041
22/05/2003
0
to com dificuldade num select.
eh o seguinte.
tenho uma tabela de contatos, e uma tabela de cidades.
na tabela contatos eu tenho um campo onde fica o codigo da cidade correspondente.
O detalhe é que não é obrigatório o preenchimento do campo cidade.
quando eu faço um
´ select * from table_contatos a, table_cidades b where a.cod_cidade = b.codigo ´, os registros que nao tiveram a cidade cadastrada nao aparecem!!!
como resolvo isso, sem ter de colocar a cidade em todos os registros?
Tek
Curtir tópico
+ 0Posts
22/05/2003
Prosystem
and a.cidade=´´
Talvez de certo.
Espero ter ajudado.
Gostei + 0
22/05/2003
Carnette
Pra não complicar muito a ´programação...CRIE uma cidade com código 0 ou vazio....
Gostei + 0
22/05/2003
Tek
resolveria, mas nao posso.
estou criando relatórios para uma aplicação já existente. não posso mudar o fonte da aplicação e nem mexer na estrutura do BD.
obrigado...
Gostei + 0
22/05/2003
Rafael Heise
LEFT OUTER JOIN ....
SELECT CLI.NOME, CID.CIDADE FRO CLIENTES CLI
LEFT OUTER JOIN CIDADES CID ON (CLI.CDCIDADE = CID.CDCIDADE)
....
abraços...
Gostei + 0
22/05/2003
Cac2000
select *
from table_contatos a, table_cidades b
where a.cod_cidade *= b.codigo
O asterisco do lado do sinal de igual indica todos os registros da tabela de contato, mesmo que não ache o correspondente na tabela de cidades
Gostei + 0
22/05/2003
Leomurray
No ORACLE por exemplo, além do outer join, vc pode usar isso:
select *
from table_contatos a, table_cidades b
where a.cod_cidade(+) = b.codigo
Mas na verdade, o que eu escrevi e o que o cac2000 escreveu são outros modos de escrever o que o Zerneo escreveu...
Abraços...
Gostei + 0
23/05/2003
Jeancamila
select *
from table_contatos a, table_cidades b
where (a.cod_cidade = b.codigo or a.cod_cidade is null)
Atensiosamente
Jean Morais
Analista de Sistemas - AIX Sistemas
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)