subquery join order by

From: Mage <mage(at)mage(dot)hu>
To: pgsql-general(at)postgresql(dot)org
Subject: subquery join order by
Date: 2010-11-19 01:36:39
Message-ID: 4CE5D4A7.8060705@mage.hu
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Hello,

(I googled and read docs before sending this e-mail).

Is it necessary to use order by twice (inside and outside) to get the
proper order if I have an ordered subqery in a join?

select * from (select distinct on (b_id) * from a order by b_id, id) sub
left join b on b.id = sub.b_id;

or

select * from (select distinct on (b_id) * from a order by b_id, id) sub
left join b on b.id = sub.b_id order by b_id;

It seems to me that it's enough to use 'order by' only inside wheter 'by
desc' or 'by asc' (b_id), however I'd like to be sure.

Thank you.

Mage

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Thom Brown 2010-11-19 02:21:50 Re: subquery join order by
Previous Message John R Pierce 2010-11-18 23:09:56 Re: Best practice to get performance