[firebase-br] Dificuldade com union e group by
Gabriel Hilbig
ghilbig em bol.com.br
Sex Dez 14 17:35:46 -03 2007
Olá
Se c.codigo, ou c.desc, sao VARCHAR
vc precisa DEFINIR TAMANHO
Cast(c.codigo as CHAR(20) , Cast(c.desc as CHAR(60))
Deve resolver
--
Gabriel Hilbig
"Wagner Porto"
<wagner.porto em itelefonica.com.br> escreveu na
mensagem news:476292AC.4020107 em itelefonica.com.br...
Preciso de ajuda para realizar um busca com calculos de
qtd * valor em 3 tabelas diferentes, porém não estou conseguindo agrupar.
Ex.
select c.codigo, c.desc, sum(i.qtd * i.valor) as "valor"
from item i
join cliente c on c.codigo = i.codcli
group by 1,2
union
select c.codigo, c.desc, sum(s.qtd * s.valor) as "valor"
from item_servico s
join cliente c on c.codigo = s.codcli
group by 1,2
union
select c.codigo, c.desc, sum(e.qtd * e.valor) as "valor"
from item_escalonamento e
join cliente c on c.codigo = e.codcli
group by 1,2
essa consulta deveria ter o seguinte resultado
1 - cliente 0001 - 100,00
2 - cliente 0002 - 105,00
3 - cliente 0003 - 250,00
porém ela me retorna
1 - cliente 0001 - 40,00
1 - cliente 0001 - 60,00
2 - cliente 0002 - 10,00
2 - cliente 0002 - 95,00
3 - cliente 0003 - 250,00
3 - cliente 0003 - 50,00
se fizer com union all, aparece somente o ultimo registro de cada cliente
1 - cliente 0001 - 60,00
2 - cliente 0002 - 95,00
3 - cliente 0003 - 50,00
Desde já agradeço a atenção.
______________________________________________
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