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

Normalizza gli indici dell'array per l'array unidimensionale in modo che inizino con 1

C'è un metodo più semplice che è brutto, ma credo tecnicamente corretto:estrai la fetta più grande possibile dall'array, invece della fetta esatta con limiti calcolati. Evita le due chiamate di funzione.

Esempio:

select ('[5:7]={1,2,3}'::int[])[-2147483648:2147483647];

risulta in:

  int4   
---------
 {1,2,3}