[firebase-br] problemas com sql

Samir Oliveira Costa sysleilao em gmail.com
Qui Abr 22 20:59:35 -03 2010


Alguem pode me ajudar

tenho um sql que me dara um resultado de uma media na seguinte jeito

select sum (l.lot_qtd) qtd, sum(l.lot_total) ValorTotal ,
(sum(l.lot_total) / sum(l.lot_qtd)) media, an.sexo, an.sangue,
(select r.DESCRICAO from tabracas r where r.cod_raca = an.raca ) desc_raca
from tablotes l, tabanimais an, tabanimaislotes anlote
where l.lei_codigo = 000000000000001
and anlote.lei_codigo = l.lei_codigo
and anlote.lot_lote = l.lot_lote
and an.ani_codigo = anlote.ani_codigo
and (l.lot_defesa = 'V' or l.lot_defesa = 'D')
group by an.sexo, an.sangue, an.raca

o resultado é este : http://i66.servimg.com/u/f66/13/56/61/41/imagem29.jpg

porem este resultado esta errado pois tenho que ter uma soma de valores como
deste sql aqui, verifiquei que esta repetindo quando tenho mais de um animal
no l.lot_lote e se eu usar distinct nos SUM, se tiver algm valor repetido
de lotes diferentes ele ira somar apenas uma vez e continuara errado.

select distinct l.lot_lote, l.lot_qtd, l.lot_total,  an.sexo, an.sangue,
(select r.DESCRICAO from tabracas r where r.cod_raca = an.raca ) desc_raca
from tablotes l, tabanimais an, tabanimaislotes anlote
where l.lei_codigo = 000000000000001
and anlote.lei_codigo = l.lei_codigo
and anlote.lot_lote = l.lot_lote
and an.ani_codigo = anlote.ani_codigo
and (l.lot_defesa = 'V' or l.lot_defesa = 'D')

o resultado é este : http://i66.servimg.com/u/f66/13/56/61/41/imagem30.jpg

ou seja preciso adaptar o sql de cima para que o resultado seja

qtd     valortotal     media     sexo     sangue     desc_raca
2        5.600           2800      F         PO           NELORE
5       11480           2296      M         PO          NELORE

Agradeço a ajuda antecipadamente.


-- 
Qualquer dúvida entrar em contato.

Samir Oliveira Costa
Técnico em Informática
(34) 3338-6337 - (34) 9148-5670
msn: sysleilao em gmail.com



Mais detalhes sobre a lista de discussão lista