Array shift equivalent?

From: Michael Glaesemann <grzm(at)seespotcode(dot)net>
To: pgsql-general <pgsql-general(at)postgresql(dot)org>
Subject: Array shift equivalent?
Date: 2006-12-06 14:58:06
Message-ID: 8921B0C3-B328-44B3-8DFF-22B9AB659E58@seespotcode.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

I'm trying to shift the first element off of an array, but I'm just
not getting it. I'm not necessarily interested in saving the rest of
the array. i just want to get the first element, which in this case
is another array.

# select * from arrays;
this_array_id | this_array
---------------+---------------------------------------------------
1 | {{foo,bar,baz},{afoo,abar,abaz},{bfoo,bbar,bbaz}}
(1 row)

I'd like to get {foo,bar,baz}.

My first try:

# select this_array[1] from arrays;
this_array
------------
(1 row)

# select this_array[1][1:3] from arrays;
this_array
-----------------
{{foo,bar,baz}}
(1 row)

This last one is close, but it's nested:

# select array_dims(this_array[1][1:3]) from arrays;
array_dims
------------
[1:1][1:3]
(1 row)

I'd like to get just a [1:3] array.

What am I missing? Thanks for any assistance.

Michael Glaesemann
grzm seespotcode net

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Tom Lane 2006-12-06 15:26:40 Re: Array shift equivalent?
Previous Message Devrim GUNDUZ 2006-12-06 14:55:31 Re: Error in installing compat-postgresql-libs rpm