1
0
mirror of https://github.com/jbranchaud/til synced 2026-01-03 15:18:01 +00:00
Files
til/postgres/getting-a-slice-of-an-array.md
2015-10-01 19:29:10 -05:00

26 lines
655 B
Markdown

# Getting A Slice Of An Array
Postgres has a very natural syntax for grabbing a slice of an array. You
simply add brackets after the array declaring the lower and upper bounds
of the slice separated by a colon.
```sql
> select (array[4,5,6,7,8,9])[2:4];
array
---------
{5,6,7}
```
Notice that the bounds are inclusive, the array index is `1`-based, and the
array declaration above needs to be wrapped in parentheses in order to not
trip up the array slice syntax.
You can also select rectangular slices from two dimensional arrays like so:
```sql
> select (array[[1,2,3],[4,5,6],[7,8,9]])[2:3][1:2];
array
---------------
{{4,5},{7,8}}
```