Postgres coalesce to empty JSONB array
{}
is an object but jsonb_array_elements
expects an array, so replace {}
with []
Make sure that both arguments return a jsonb array. For example, if your column is an integer, you can use concat
to add the square brackets and ::jsonb
for the conversion
SELECT jsonb_array_elements(coalesce(concat('[',my_column,']')::jsonb,'[]'::jsonb))
Here is SQL code for accomplishing what you want:
SELECT jsonb_array_elements(coalesce(null_column, '[{}]'::jsonb))FROM tableWHERE id = 13;