Re: join of array - Mailing list pgsql-general

From Joe Conway
Subject Re: join of array
Date
Msg-id 3F3D131C.90909@joeconway.com
Whole thread Raw
In response to Re: join of array  (elein <elein@varlena.com>)
Responses Re: join of array  (elein <elein@varlena.com>)
Re: join of array  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-general
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


pgsql-general by date:

Previous
From: Jenny Zhang
Date:
Subject: getting execution plans with multiple database connections
Next
From: expect
Date:
Subject: summary and request