Thank you for your recommendation
I was able to get this to work
(using PG SQL parser to parse out two dimentional PG array
where the array data came from my client program instead of
a DB value)
select ('{{A,B,C},{D,E,F}}'::text[][])[i][j] from
generate_series(1, array_upper('{{A,B,C},{D,E,F}}'::text[][], 1)) i
cross join
generate_series(1, array_upper('{{A,B,C},{D,E,F}}'::text[][], 2)) j
On Sat, 15 Aug 2009 21:17 +0100, "Sam Mason" <sam@samason.me.uk> wrote:
> On Sat, Aug 15, 2009 at 01:41:12PM -0400, V S P wrote:
> > but running into a problem as I cannot typecast correctly
> >
> > select V[i][j]
> > FROM
> > (select '{{A,B,C},{D,E,F}}') as V
> > CROSS JOIN generate_series(1, 3) i
> > CROSS JOIN generate_series(1,2) j
> >
> > Does not work, because V is not an array (it is a string)
> > and I do not know where to put the typecast
> > ::text[][]
>
> Not sure what you tried, but the following does the "right" thing for
> me:
>
> SELECT ('{{A,B,C},{D,E,F}}'::text[])[1][1];
>
> The brackets are needed so that PG doesn't get confused between the type
> declaration and the array indexing.
>
> --
> Sam http://samason.me.uk/
>
> --
> Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
> To make changes to your subscription:
> http://www.postgresql.org/mailpref/pgsql-general
--
Vlad P
author of C++ ORM http://github.com/vladp/CppOrm/tree/master
--
http://www.fastmail.fm - The professional email service