Trazer valor 0 para quando contador de Data for nulo

SQL

Oracle

Banco de Dados

Lógica de programação

16/10/2018

Estou contanto determinada informação de uma tabela, e preciso contar por uma data, e necessito que quando não houver o que contar ele me apresente 0. Tentei usar NVL, mas oracle diz que não posso usar o que retorna number para date. Alguém sabe de alguma forma para resolver isso?
Maicon Scapatici

Maicon Scapatici

Curtidas 0

Respostas

Alex William

Alex William

16/10/2018

Um "SELECT count()" não te serve pra esse problema?

 SELECT COUNT(*) FROM <nome_tabela> WHERE <campo_data> = '<data>';
GOSTEI 0
Maicon Scapatici

Maicon Scapatici

16/10/2018

O count era o meu problema, ele estava contando certo, mas quando havia dados que não existiam ele deveria me trazer 0, mas não apresentava nada.
Depois de pesquisar em vários foruns e artigos encontrei a solução, usar uma sub-query no NVL dessa forma
 SELECT DISTINCT
NVL((SELECT COUNT(*)
FROM tabela1
WHERE comparações
),0)
FROM tabela1
WHERE comparações
Pois o meu relatório não possuia em determinados casos nada para apresentar, então não havia como ele substituir nada por zero, pois a informação não era nem nula, e dessa forma acima quando não existir nada ele cria como 0. Agradeço a disposição em ajudar.
GOSTEI 0
Kevlyn Godoy

Kevlyn Godoy

16/10/2018

Olá Concurseiros


Venha participar do Aniversário do Maior Site de Rateios do Brasil,

O aniversário é do Concurseiros Unidos,
mas o presente quem ganha é você!

Desconto de 30% a 70% em todo o site!
Fale que viu nosso anuncio no forum e ganha desconto adicional
Corre aproveitar antes que termine!
5541991115296
GOSTEI 0
POSTAR