pg.ddx.io  pgsql-sql@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Richard Huxton <dev@archonet.com>
To: Achilleas Mantzios <achill@matrix.gatewaynet.com>
Cc: pgsql-sql@postgresql.org
Subject: Re: UNNEST result order vs Array data
Date: Thu, 20 Jun 2013 12:37:57 +0100
Message-ID: <51C2E995.3070407@archonet.com> (raw)
In-Reply-To: <51C2E441.4020200@matrix.gatewaynet.com>
References: <1371724857304-5760087.post@n5.nabble.com>
	<51C2DD42.4000002@dalibo.com>
	<51C2E441.4020200@matrix.gatewaynet.com>
List-Unsubscribe: <mailto:majordomo@postgresql.org?body=unsub%20pgsql-sql>

On 20/06/13 12:15, Achilleas Mantzios wrote:
> On 20/06/2013 13:45, Vik Fearing wrote:
>> On 06/20/2013 12:40 PM, gmb wrote:
>>> Hi all
>>> I just want to confirm something regarding UNNEST function used with
>>> arrays.
>>> I cannot see that it is specifically mentioned in the documentation ,
>>> but
>>> maybe because it is obvious.
>>>
>>> Is the order of the result guaranteed to be the order of the array
>> Order is never guaranteed unless you specify an ORDER BY clause.
>>
>>
> I really think that the order should exactly reflect the order in the
> array.
> Think of ARRAY as Relation + ORDER. Relation + Order gives an ARRAY,
> ARRAY should give Relation *and* ORDER in return.

An array is ordered. If you turn it into a relation then it isn't 
ordered any more until you apply ORDER BY.

An unnest() will almost certainly scan the array in-order, but once you 
embed that in a large query the ordering is no longer guaranteed.

-- 
   Richard Huxton
   Archonet Ltd


-- 
Sent via pgsql-sql mailing list (pgsql-sql@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-sql



view thread (9+ messages)  latest in thread

Message-ID: <51C2E995.3070407@archonet.com>
Permalink:  ../51C2E995.3070407@archonet.com/
Also on:    postgresql.org/message-id/51C2E995.3070407@archonet.com

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-sql@postgresql.org
  Cc: dev@archonet.com, achill@matrix.gatewaynet.com
  Subject: Re: UNNEST result order vs Array data
  In-Reply-To: <51C2E995.3070407@archonet.com>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox