Er is een eenvoudigere methode die lelijk is, maar ik geloof dat het technisch correct is:extraheer de grootst mogelijke slice uit de array, in tegenstelling tot de exacte slice met berekende grenzen. Het vermijdt de twee functieaanroepen.
Voorbeeld:
select ('[5:7]={1,2,3}'::int[])[-2147483648:2147483647];
resulteert in:
int4 --------- {1,2,3}