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

Por que a função PostgreSQL json_agg() não retorna uma matriz vazia?


json_agg retorna null de um conjunto vazio:
select json_agg(t.*) is null
from (select 'test' as mycol where 1 = 2) t ;
 ?column? 
----------
 t

Se você quiser uma matriz json vazia coalesce isto:
select coalesce(json_agg(t.*), '[]'::json)
from (select 'test' as mycol where 1 = 2) t ;
 coalesce 
----------
 []