[firebase-br] RES: Res: Query "Estranha" não totaliza pelo GROUP BY

Marco Antonio marcobolacha em vicoldobrasil.com.br
Qua Ago 27 18:36:33 -03 2008


Se vc quiser deixar ordenado, coloque a FAMILIA ANTES DA NNOTA. Assim ele
obedecera.

ORDER BY A.FAMILIA, A.NNOTA, A.CODPRODUTO
GROUP BY FAMILIA

 
Marco Antonio
Gerência Informática
(  (35) 3821.5009
e-mail: marco.castro em vicoldobrasil.com.br
 

P Antes de imprimir pense em sua responsabilidade e compromisso com o MEIO
AMBIENTE
-----Mensagem original-----
De: lista-bounces em firebase.com.br [mailto:lista-bounces em firebase.com.br] Em
nome de Luiz Carlos Rosa
Enviada em: quarta-feira, 27 de agosto de 2008 17:37
Para: FireBase
Assunto: Re: [firebase-br]Res: Query "Estranha" não totaliza pelo GROUP BY

Uau! vc acertou na mosca! tirei a ordenação dos SELECT´s aninhados e parece 
q resolveu.
Mas, perdoe a pergunta infame: Por que a ordenação nos SELECT´s aninhados 
influenciou na totalização do SELECT principal?


SDS,

Luiz Rosa

----- Original Message ----- 
From: "robson" <robsonfg em terra.com.br>
To: "FireBase" <lista em firebase.com.br>
Sent: Wednesday, August 27, 2008 2:07 PM
Subject: [firebase-br] Res: Query "Estranha" não totaliza pelo GROUP BY


ela ira criar um total em que estarao presente as diferentes variações de
A.NNOTA, A.FAMILIA e A.CODPRODUTO

tipo:

nota 1,2,3
familia 3,4,5
codproduto 6,7,8

totalizando

1 3 6
1 3 7
1 3 8
1 4 6
1 4 7
1 4 8
e assim sucessivamente
-------Mensagem original------- 

De: Luiz Carlos Rosa
Data: 27/8/2008 13:59:56
Para: FireBase
Assunto: [firebase-br] Query "Estranha" não totaliza pelo GROUP BY

Senhores, boa tarde.

Preciso de uma ajuda. Criei a query abaixo, mas qual nao foi minha surpresa
ao saber que ela nao totaliza pelo campo FAMILIA, não sei o q ela faz, mas o

resultado nao condiz com o comando.

Alguem poderia me auxiliar?

Muito Obrigado.

SDS,

Luiz Rosa

SELECT FAMILIA,
SUM(PRCTOTAL) PRCTOTAL,
SUM(VLICMS) VLICMS,
SUM(VLIPI) VLIPI,
SUM(VLFRETE) VLFRETE
FROM (SELECT
FAMILIA,
(QTPRODUTO) QTPRODUTO,
(PRCCOMIPI) PRCTOTAL,
(VLICMS) VLICMS,
(VLIPI) VLIPI,
(CAST(CASE WHEN PESOITENS > 0 THEN VLPRESTACAO*PESOITEM/PESOITENS ELSE 0
END AS DECIMAL(12,2))) VLFRETE
FROM(SELECT DISTINCT
CAST(A.FAMILIA AS INTEGER) FAMILIA,
A.CODPRODUTO,
A.NNOTA,
CAST(A.QUANTIDADE AS INTEGER) QTPRODUTO,
CAST(A.PRCUNITARIO AS DECIMAL(12,4)) PRCUNITARIO,
CAST(A.PRCTOTAL AS DECIMAL(12,2)) PRCTOTAL,
CAST(A.PRCTOTAL+A.VALIPI AS DECIMAL(12,2)) PRCCOMIPI,
CAST(A.IPI AS DECIMAL(12,2)) PERCIPI,
CAST(A.VALIPI AS DECIMAL(12,2)) VLIPI,
CAST(A.ICM AS DECIMAL(12,2)) PERCICMS,
CAST(A.PRCTOTAL / 100 * A.ICM AS DECIMAL(12,2)) VLICMS,
CAST(C.TOTALPRODUTOS AS DECIMAL(12,2)) VLTOTALPROD,
CAST(C.TOTALIPI AS DECIMAL(12,2)) VLTOTALIPI,
CAST(C.TOTALICM AS DECIMAL(12,2)) VLTOTALICM,
CAST(COALESCE(C.ICMSUB,0) AS DECIMAL(12,2)) VLTOTALSUBST,
B.VENDA,
C.E_S,
CAST(A.PRCTOTAL/100*A.COMISSAO AS DECIMAL(12,2)) VLCOMISSAO,
F.PESOLIQUIDO PESOITENS,
C.NUMPED NUMPEDNOTA,
CAST(COALESCE(D.VLPRESTACAO,0) AS DECIMAL(12,2)) VLPRESTACAO,
CAST(A.QUANTIDADE/E.METRAGEM*E.PESOLIQUIDO AS DECIMAL(12,2))
PESOITEM
FROM CADNOTA2 A
INNER JOIN CADNATOP B ON B.CONTROLE=A.NATOPCONTROLE
INNER JOIN CADNOTA1 C ON C.CONTROLE=A.CONTROLE
INNER JOIN CADPRO1 E ON E.CONTROLE=A.CONTROLEPRODUTO
INNER JOIN (SELECT A.NNOTA,
SUM(CAST(A.QUANTIDADE/B.METRAGEM*B.PESOLIQUIDO AS DECIMAL(12,2)))
PESOLIQUIDO
FROM CADNOTA2 A INNER JOIN CADPRO1 B ON
B.CONTROLE=A.CONTROLEPRODUTO
WHERE A.DTEMISSAO BETWEEN '07/01/2008' AND '07/31/2008'
AND A.CANCELADO LIKE 'Não' GROUP BY A.NNOTA) F ON F.NNOTA=A.NNOTA
LEFT JOIN (SELECT DISTINCT NNOTA,NUMPED,VLPRESTACAO FROM FRETES) D
ON D.NNOTA=A.NNOTA AND D.NUMPED=A.NUMPED
WHERE A.DTEMISSAO BETWEEN '07/01/2008' AND '07/31/2008'
AND A.CANCELADO LIKE 'Não'
AND B.VENDA LIKE 'S'
AND C.E_S LIKE 'S'
ORDER BY A.NNOTA, A.FAMILIA, A.CODPRODUTO) )
GROUP BY FAMILIA


______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para saber como gerenciar/excluir seu cadastro na lista, use: http://www
firebase.com.br/fb/artigo.php?id=1107
Para consultar mensagens antigas: http://firebase.com.br/pesquisa


No virus found in this incoming message.
Checked by AVG - http://www.avg.com
Version: 8.0.138 / Virus Database: 270.6.9/1637 - Release Date: 27/8/2008
07:01


.


______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para saber como gerenciar/excluir seu cadastro na lista, use: 
http://www.firebase.com.br/fb/artigo.php?id=1107
Para consultar mensagens antigas: http://firebase.com.br/pesquisa



______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para saber como gerenciar/excluir seu cadastro na lista, use:
http://www.firebase.com.br/fb/artigo.php?id=1107
Para consultar mensagens antigas: http://firebase.com.br/pesquisa






Mais detalhes sobre a lista de discussão lista