Bruce Momjian <bruce@momjian.us> writes:
> Tom Lane wrote:
>> This is not a bug, this is a definitional disagreement, and your TODO
>> entry presupposes an answer that I don't particularly agree with.
> Well, our documentation suggests thaat [1] is the same as [1:1]:
> http://www.postgresql.org/docs/8.2/static/arrays.html#AEN5791
It says absolutely no such thing. A subscript expression involving m:n
produces a "slice", hence an array of different dimensionality from the
original, whereas a subscript expression not involving any colon
produces a single element --- that is, not an array at all.
You could make a fair case that the (ARRAY[[1,2],[3,4]])[1] example
should throw an error instead of returning null. But to claim it is
the same as a slice expression is a typing violation.
regards, tom lane