[firebase-br] problema com Left join

Caio Oliveira news em caiosistemas.com.br
Qua Nov 1 11:38:42 -03 2006


Olá Everaldo,

Tente a SQL abaixo:

select distinct c.id_chamado, c.id_cliente, o.id_ocorrencia from
chamados_ocorrencia o left join chamados c on
((c.id_chamado = o.id_chamado)

Ou seja, vc. estará fazendo o SELECT na tabela de ocorrências; que é a 
tabela filha de chamados, certo?.

Eu percebi também, que a mesma ocorrência se repete na tabela de 
chamados_ocorrencia (isso está correto?); então inseri o distinct na 
tabela acima como também sugerido pelo nosso amigo Mario. Assim, o 
resutado ficará como abaixo:

id_chamado  id_cliente  id_ocorrencia
----------  ----------  -------------
1           1           1
1           1           2
2           2           1
2           2           2
2           2           3
-------------------------------------

Sds, Caio Oliveira


Everaldo Gusmão escreveu:
> Olá pessoal.
> 
> Estou com uma duvida de como resolver seguinte problema, tenho 2 tabelas 
> assim:
> 
> table chamados
> id_chamado   id_cliente
> 1                   1
> 2                   2
> 
> table chamados_ocorrência
> id_chamado   id_ocorrência
> 1                        1
> 1                        2
> 1                        1
> 2                        1
> 2                        3
> 2                        1
> 
> o meu problema é que preciso construir um relatório que mostre
> os chamados de uma ocorrência especifica sem repetir a ocorrência
> mesmo que exista 2 registro na tabela chamados_ocorrência, por exemplo:
> 
> select  c.id_chamado, c.id_cliente, o.id_ocorrencia from
> chamados c left join chamados_ocorrencia o on
> ((c.id_chamado = o.id_chamado) and (c.id_ocorrencia = 1))
> 
> neste caso o retorno é o seguinte:
> id_chamado     id_cliente    id_ocorrencia
> 1                      1                 1
> 1                      1                 1     <==== está repetindo a 
> ocorrência
> 2                      2                 1
> 2                      2                 1     <=== está repetindo a 
> ocorrência
> 
> ai eu pergunto tem como resolver isto usado o left join?
> 
> um abraço,
> Everaldo 
> 
> 
> 
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para editar sua configuração na lista, use o endereço http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
> 





Mais detalhes sobre a lista de discussão lista