ssh... No te refieres a un null sino a un vacío?
null es diferente de vacío pero me confunde el hecho de que digas que muestre cuando no haya registros. Te refieres a que haya un vacío?
Mira estos ejemplos
Código sql:
Ver originalpruebas=> \d prueba_null;
Tabla ½public.prueba_null╗
Columna | Tipo | Modificadores
---------+-----------------------+---------------
campo1 | CHARACTER VARYING(10) |
pruebas=> INSERT INTO prueba_null VALUES('');
INSERT 0 1
pruebas=> INSERT INTO prueba_null VALUES(NULL);
INSERT 0 1
pruebas=> INSERT INTO prueba_null VALUES('otra cosa');
INSERT 0 1
pruebas=> SELECT *FROM prueba_null;
campo1
-----------
otra cosa
(3 filas)
Al parecer null y vacío son iguales. (Visualmente) pero mira esto:
Código sql:
Ver originalpruebas=> SELECT COALESCE(campo1,'nulos') FROM prueba_null;
COALESCE
-----------
nulos
otra cosa
(3 filas)
pruebas=> SELECT CASE WHEN campo1='' THEN 'vacios' ELSE campo1 END FROM prueba_null;
campo1
-----------
vacios
otra cosa
(3 filas)
pruebas=> SELECT CASE WHEN campo1='' THEN 'vacio' ELSE COALESCE(campo1,'nulos') END FROM prueba_null
;
COALESCE
-----------
vacio
nulos
otra cosa
(3 filas)
aplica este concepto a tu problema.