Re: number of dimensions of a multi-dimensional array - Mailing list pgsql-general

From David Fetter
Subject Re: number of dimensions of a multi-dimensional array
Date
Msg-id 20051202034205.GB12154@fetter.org
Whole thread Raw
In response to number of dimensions of a multi-dimensional array  (&ru <voros.andras@gmail.com>)
List pgsql-general
On Thu, Dec 01, 2005 at 02:15:39PM +0100, &ru wrote:
> Hi!
>
> I am developing pl/pgsql functions with multi-dimensional array input
> parameter.
> I can use array_dims(), but it gives just the text representation of
> the structure and it is not suitable when I want to iterate over the
> whole array with the array_lower() and array_upper() functions. I want
> to handle custom dimension/size arrays.
> So my question is, how can I easily determine the number of the
> dimensions of an array?

This illustrates what to do :)

SELECT
    array_dims(array[[1,2],[3,4]]) AS "text representation",
    string_to_array( array_dims(array[[1,2],[3,4]]) ,'][') AS "pieces",
    array_upper( string_to_array( array_dims(array[[1,2],[3,4]]) ,']['), 1) AS "number of dimensions"
;

Cheers,
D
--
David Fetter david@fetter.org http://fetter.org/
phone: +1 415 235 3778

Remember to vote!

pgsql-general by date:

Previous
From: David Fetter
Date:
Subject: Re: Function returning SETOF
Next
From: Scott Frankel
Date:
Subject: Re: pg_restore error