distinct on doesn't fail without order by? why? - Mailing list pgsql-bugs

From hubert depesz lubaczewski
Subject distinct on doesn't fail without order by? why?
Date
Msg-id 20090518182432.GA9289@depesz.com
Whole thread Raw
Responses Re: distinct on doesn't fail without order by? why?  (Jeff Davis <pgsql@j-davis.com>)
Re: distinct on doesn't fail without order by? why?  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-bugs
I was under impression that select distinct on (xx) ...
will fail if xx doesn't match the left most part of order by. i.e. it
requires order by xx, while allowing order by xx, something, else.

But it seems you can run the query with no order by clause at all.

is it intentional?

# select distinct on (x) x, y from test;
 x | y
---+---
 1 | 2
 2 | 3
(2 rows)

# select * from test;
 x | y
---+---
 1 | 2
 2 | 3
 1 | 4
(3 rows)

Best regards,

depesz

--
Linkedin: http://www.linkedin.com/in/depesz  /  blog: http://www.depesz.com/
jid/gtalk: depesz@depesz.com / aim:depeszhdl / skype:depesz_hdl / gg:6749007

pgsql-bugs by date:

Previous
From: Tom Lane
Date:
Subject: Re: BUG #4812: statistics not available on tables containing only hstore column
Next
From: Jeff Davis
Date:
Subject: Re: distinct on doesn't fail without order by? why?