Página 1 de 1

Retornar valor Nulo e Não Nulo

Enviado: Seg, 15 Ago 2016 10:19 am
por escastilho
Pessoal, bom dia!

Tenho uma tabela onde na mesma coluna possui valores Nulos e Não Nulos e preciso de retornar no mesmo SQL, tentei desta forma mas retorna apenas os Não Nulos.

Selecionar tudo

select a.nome, a.status from tb_cliente a where a.status in (1,2,null)
No sistema o 'STATUS' 1 = reativado, 2 = cancelado e Null = normal

Na query preciso de retornar todos os clientes em seus respectivos Status.

Grato
Erik

Re: Retornar valor Nulo e Não Nulo

Enviado: Seg, 15 Ago 2016 1:29 pm
por geovani
Boa tarde Erick!

Você pode tentar assim:

Selecionar tudo

select a.nome, NVL(a.status,'Normal') as status
from tb_cliente a 
where a.status is null or a.status in (1,2)
Espero ter ajudado!
abraço!

Re: Retornar valor Nulo e Não Nulo

Enviado: Ter, 16 Ago 2016 10:24 am
por escastilho
Geovani, bom dia!

Tentei conforme você explicou mas esta dando erro ORA-01722: invalid number

Re: Retornar valor Nulo e Não Nulo

Enviado: Ter, 16 Ago 2016 11:41 am
por geovani
Está dando o erro ORA-01722: invalid number porque usando NVL(a.status,'Normal') retorna um texto quando é nulo e o campo espera um número.

Faça assim:

Selecionar tudo

select a.nome, DECODE(a.status,1,'REATIVADO',2,'CANCELADO','NORMAL') as status
from tb_cliente a 
where a.status is null or a.status in (1,2)