[firebase-br] Coalesce não funcionando
RedDevil
reddevil em reddevil.eti.br
Qui Set 22 23:51:00 -03 2005
ola Luiz Henrique,
eh um chute que eu estou dando, mas tente fazer dessa forma ae abaixo,
tipow assim "aproximando" o coalesce do valor a ser testado:
SELECT SUM(coalesce(T1.QUANTIDADE_MOVIMENTO,0)) -
( SELECT SUM(coalesce(T2.QUANTIDADE_MOVIMENTO,0)) )
FROM ESTOQUE T2
WHERE TIPO_MOVIMENTO = 'S'
AND T2.CODIGO_PRODUTO = 'AC002'
GROUP BY T2.CODIGO_PRODUTO
)) AS TOTAL
FROM ESTOQUE T1
WHERE T1.TIPO_MOVIMENTO = 'E'
AND T1.CODIGO_PRODUTO = 'AC002'
GROUP BY T1.CODIGO_PRODUTO
[]s
força sempre.
ate +++
--
Luiz "RedDevil" Stefanski - Linux User #399026
http://www.RedDevil.eti.br - Delphi 4 Powered by IBObjects
exemplos e dicas sobre o IBObjects:
http://www.firebase.com.br/cgi-bin/firebase.cgi/dnld?ID=165
compilaçao/instalaçao do IBObjects sabor BPG:
http://www.firebase.com.br/cgi-bin/firebase.cgi/artigo?ID=630
Post By Luiz Henrique Severo:
> Pessoal,
>
> No select abaixo o CODIGO_PRODUTO em questão não tem movimento de saída
> (TIPO_MOVIMENTO = 'S') registrado no estoque. Por isso utilizei o COALESCE
> para quando retornasse NULL ele substituisse por 0.
> Só que isso não está funcionando... Está retornando NULL assim mesmo.
>
> SELECT (COALESCE(SUM(T1.QUANTIDADE_MOVIMENTO), 0) -
> (SELECT COALESCE(SUM(T2.QUANTIDADE_MOVIMENTO), 0)
> FROM ESTOQUE T2
> WHERE TIPO_MOVIMENTO = 'S'
> AND T2.CODIGO_PRODUTO = 'AC002'
> GROUP BY T2.CODIGO_PRODUTO
> )) AS TOTAL
> FROM ESTOQUE T1
> WHERE T1.TIPO_MOVIMENTO = 'E'
> AND T1.CODIGO_PRODUTO = 'AC002'
> GROUP BY T1.CODIGO_PRODUTO
>
> Alguém sabe porque?
>
> Utilizo FB1.5
>
>
> Obrigado
> Luiz Henrique Severo d Oliveira
> RPG Soluções
> www.rpgsolucoes.com.br
>
Mais detalhes sobre a lista de discussão lista