Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

rochajl

[Resolvido] Retornar zero em count is null

Recommended Posts

Necessito de uma ajuda.

Tenho uma tabela TB_BAIRRO (id, bairro) e uma view BAIRRO_ENTREGA (bairro, quant, data)

Estou utilizando o SQL abaixo que me retorna todos os bairros da tabela BAIRROS e mais 03 colunas TOTAL_MES01 com a quantidade de entregas no bairro do primeiro período, TOTAL_MES02 com a quantidade de entregas no bairro do segundo período e DIFERENCA, período 01 - período 02.

O problema é que se não tenho entregas em determinado bairro em algum dos períodos o comando retorna NULL e necessito que retorne 0 (zero) para fazer a conta da DIFERENCA.

Já pesquisei bastante, tentei com IF, CASE, IS NULL e nada. Segue comando:

 

Select B.BAIRRO,

B1.TOTAL_MES01,

B2.TOTAL_MES02,

(B1.TOTAL_MES01 - B2.TOTAL_MES02) AS DIFERENCA

FROM TB_BAIRRO B

LEFT JOIN (SELECT X.BAIRRO, coalesce(COUNT(X.QUANT),0) AS TOTAL_MES01

FROM BAIRRO_ENTREGA X

LEFT JOIN TB_BAIRRO X1 ON (X1.BAIRRO = X.BAIRRO)

WHERE X.Data between '$data1' and '$data2'

GROUP BY 1) B1 ON (B1.BAIRRO = B.BAIRRO)

LEFT JOIN(SELECT Y.BAIRRO, coalesce(COUNT(Y.QUANT),0) AS TOTAL_MES02

FROM BAIRRO_ENTREGA Y

LEFT JOIN TB_BAIRRO Y1 ON (Y1.BAIRRO = Y.BAIRRO)

WHERE Y.Data between '$data3' and '$data4'

GROUP BY 1) B2 ON (B2.BAIRRO = B.BAIRRO)

ORDER BY B.BAIRRO

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.