I'm really, really liking the multirange types in PG14. Thank you for
making them! Unfortunately I am struggling with how to loop over the
segments of a multirange. There doesn't seem to be a way to convert them
to arrays, and I can't just use plpgsql's FOREACH on one. Am I missing
something obvious? It seems like a reasonable thing to want to do.
FWIW, my actual end goal is to take something like this:
select int8range(1,10)::int8multirange - int8range(4,6)::int8multirange;
?column?
────────────────
{[1,4),[6,10)}
...and turn it into this:
select ???;
int8range │ ?column?
───────────┼──────────
[1,4) │ 0
[6,10) │ 0