On Tue, Oct 11, 2011 at 4:40 AM, Pavel Stehule <pavel.stehule@gmail.com> wrote:
> Hello
>
> A current limits of dynamic work with row types in PL/pgSQL can be
> decreased with a possible casts between rows and arrays. Now we have a
> lot of tools for arrays, and these tools should be used for rows too.
>
> postgres=# \d mypoint
> Composite type "public.mypoint"
> Column │ Type │ Modifiers
> ────────┼─────────┼───────────
> a │ integer │
> b │ integer │
>
> postgres=# select cast(rmypoint '(10,20) as int[]);
> array
> ────────────
> {10,20}
> (1 row)
>
> postgres=# select cast(ARRAY[10,20] AS mypoint);
> mypoint
> ─────────
> (10,20)
> (1 row)
>
> What do you think about this idea?
Well, a ROW can contain values of different types; an ARRAY can't.
--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company