Re: Possible mistake in new array syntax - Mailing list pgsql-hackers

From Joe Conway
Subject Re: Possible mistake in new array syntax
Date
Msg-id 3EFCC09F.5070706@joeconway.com
Whole thread Raw
In response to Possible mistake in new array syntax  (Peter Eisentraut <peter_e@gmx.net>)
List pgsql-hackers
Peter Eisentraut wrote:
> The documentation says the following is allowed:
> 
> INSERT INTO sal_emp
>     VALUES ('Bill',
>     ARRAY[10000, 10000, 10000, 10000],
>     ARRAY[['meeting', 'lunch'], ['','']]);
> 
> I cannot find justification for this in the standard.  According to my
> reading, it should be
> 
> INSERT INTO sal_emp
>     VALUES ('Bill',
>     ARRAY[10000, 10000, 10000, 10000],
>     ARRAY[ARRAY['meeting', 'lunch'], ARRAY['','']]);
> 

This parallels my question on the last post. I don't see any 
justification for multidimensional arrays at all, so my thought was that 
we have a free hand to define it. It seemed much nicer to write:    ARRAY[[[[[[1]]]]]]
for a 6 dimensional array, than this:    ARRAY[ARRAY[ARRAY[ARRAY[ARRAY[ARRAY[1]]]]]]
and actually, both do work:

regression=# select ARRAY[ARRAY[ARRAY[ARRAY[ARRAY[ARRAY[1]]]]]];     array
--------------- {{{{{{1}}}}}}
(1 row)

regression=# select ARRAY[[[[[[1]]]]]];     array
--------------- {{{{{{1}}}}}}
(1 row)


Joe



pgsql-hackers by date:

Previous
From: Austin Gonyou
Date:
Subject: Re: Tablespaces (was Re: [GENERAL] Physical Database
Next
From: nolan@celery.tssi.com
Date:
Subject: Re: Tablespaces (was Re: [GENERAL] Physical Database