Re: [PATCH] Exorcise "zero-dimensional" arrays (Was: Re: Should array_length() Return NULL)
От | Kevin Grittner |
---|---|
Тема | Re: [PATCH] Exorcise "zero-dimensional" arrays (Was: Re: Should array_length() Return NULL) |
Дата | |
Msg-id | 1365259390.7407.YahooMailNeo@web162904.mail.bf1.yahoo.com обсуждение исходный текст |
Ответ на | Re: [PATCH] Exorcise "zero-dimensional" arrays (Was: Re: Should array_length() Return NULL) (Brendan Jurd <direvus@gmail.com>) |
Ответы |
Re: [PATCH] Exorcise "zero-dimensional" arrays (Was: Re:
Should array_length() Return NULL)
|
Список | pgsql-hackers |
Brendan Jurd <direvus@gmail.com> wrote: > On 6 April 2013 01:59, Kevin Grittner <kgrittn@ymail.com> wrote: >> Brendan Jurd <direvus@gmail.com> wrote: >> >>> The language specifically allows for zero elements, and does not >>> contemplate multiple dimensions. >> >> I don't remember anything in the spec which would prohibit the data >> type of an array element from itself being an array, however. > > Indeed it does not prohibit nesting arrays inside other arrays, but > the multidim arrays that Postgres allows you to create are not the > same thing as nested arrays. > > I believe that a purely to-spec implementation would allow you to make > an array-of-int-arrays, but since each element is its own separate > collection there would be no requirement that they have the same > cardinality as each other. > > For example, ARRAY[[1], [2,3], [4,5,6]] is a valid collection per the > spec, but Postgres won't let you create this, because Postgres is > trying to create a 2-D matrix of integers, rather than a collection of > collections of integers. > > The inability to extend multidim arrays in Postgres is another > manifestation of this matrix-oriented design. Extending nested > collections is a no-brainer. Extending matrices while ensuring they > remain perfectly regular ... not so much. Your interpretation matches mine all around. It is unfortunate that we have hijacked the standard's syntax for arrays to add a matrix feature. It seems to leave us without any way forward on these issues that I like very much. -- Kevin Grittner EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company
В списке pgsql-hackers по дате отправления: