PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

Usando COALESCE para manipular valores NULL no PostgreSQL


Você pode usar COALESCE em conjunto com NULLIF para uma solução curta e eficiente:
COALESCE( NULLIF(yourField,'') , '0' )

O NULLIF a função retornará null se yourField é igual ao segundo valor ('' no exemplo), tornando o COALESCE função funcionando totalmente em todos os casos:
                 QUERY                     |                RESULT 
---------------------------------------------------------------------------------
SELECT COALESCE(NULLIF(null  ,''),'0')     |                 '0'
SELECT COALESCE(NULLIF(''    ,''),'0')     |                 '0'
SELECT COALESCE(NULLIF('foo' ,''),'0')     |                 'foo'