elein wrote:
>> ARRAY[[1,2],[3,4]] || ARRAY[[1,2],[3,4]] ==
>> '{{{1,2},{3,4}},{{1,2},{3,4}}}'
>>
>>I think the first two still make sense. I guess the third case ought to be:
>> ARRAY[[1,2],[3,4]] || ARRAY[[1,2],[3,4]] ==
>> '{{1,2},{3,4},{1,2},{3,4}}'
>>?
>
> I do not think this is right. I think the current behaviour
> is right. You are effectively dereferencing or flattening
> the second array which changes the definition of the second
> object.
It makes sense in analogy to
ARRAY[1,2] || ARRAY[3,4] == '{1,2,3,4}'
In the case of, e.g. ARRAY[[1,2],[3,4]] || ARRAY[[5,6],[7,8]],
'{1,2}', '{3,4}', '{5,6}', and '{7,8}' are "elements" of the higher
level array, just like 1, 2, 3, & 4 are elements of '{1,2,3,4}'
Joe