PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

Perché la funzione json_agg() di PostgreSQL non restituisce un array vuoto?

json_agg restituisce null da un insieme vuoto:

select json_agg(t.*) is null
from (select 'test' as mycol where 1 = 2) t ;
 ?column? 
----------
 t

Se vuoi un array json vuoto coalesce esso:

select coalesce(json_agg(t.*), '[]'::json)
from (select 'test' as mycol where 1 = 2) t ;
 coalesce 
----------
 []