CREATE FUNCTION test(daterange[]) RETURNS datemultirange
LANGUAGE SQL
IMMUTABLE PARALLEL SAFE
RETURN (SELECT range_agg(t.x) FROM (SELECT unnest($1) x) t);
WITH i AS (
SELECT ARRAY[
daterange('2023-01-01', '2023-02-01'),
daterange('2023-05-01', '2023-09-01')
]::daterange[] x
)
SELECT test(i.x) from i;