Re: [firebase-br] Coalesce não funcionando
Augusto
augusto em cmsolucoes.com.br
Sex Set 23 09:10:51 -03 2005
Luiz,
se a query interna não possui registros, ela não terá resultado será nula.
vc deve usar o COALESCE em todo o resultado da sebquery, desse jeito.
SELECT
(COALESCE(SUM(T1.QUANTIDADE_MOVIMENTO), 0) -
COALESCE( <-AQUI
(SELECT COALESCE(SUM(T2.QUANTIDADE_MOVIMENTO), 0)
FROM ESTOQUE T2
WHERE TIPO_MOVIMENTO = 'S'
AND T2.CODIGO_PRODUTO = 'AC002'
GROUP BY T2.CODIGO_PRODUTO
)
, 0) <- aqui
)
AS TOTAL
FROM ESTOQUE T1
WHERE T1.TIPO_MOVIMENTO = 'E'
AND T1.CODIGO_PRODUTO = 'AC002'
GROUP BY T1.CODIGO_PRODUTO
[]´s
Augusto
----- Original Message -----
From: "Luiz Henrique Severo" <lhsevero em rpgsolucoes.com.br>
To: <lista em firebase.com.br>
Sent: Thursday, September 22, 2005 10:35 PM
Subject: [firebase-br] Coalesce não funcionando
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
--
No virus found in this outgoing message.
Checked by AVG Anti-Virus.
Version: 7.0.344 / Virus Database: 267.11.4/109 - Release Date: 21/09/2005
______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.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