Thread: Sorting, when values are equal....

Sorting, when values are equal....

From
"Net Virtual Mailing Lists"
Date:
Hello,


If I do something like:

SELECT * FROM sometable ORDER BY somerow DESC LIMIT 1 OFFSET 2;

.. and there are multiple rows in sometable where somerow is identical,
am I assured that the values will always come back in the same order?
.....  Or do I need to ensure that a second sort (such as the oid?) is used?


Thanks!

- Greg




Re: Sorting, when values are equal....

From
Martijn van Oosterhout
Date:
On Mon, Oct 25, 2004 at 04:45:15AM -0700, Net Virtual Mailing Lists wrote:
> Hello,
>
>
> If I do something like:
>
> SELECT * FROM sometable ORDER BY somerow DESC LIMIT 1 OFFSET 2;
>
> .. and there are multiple rows in sometable where somerow is identical,
> am I assured that the values will always come back in the same order?
> .....  Or do I need to ensure that a second sort (such as the oid?) is used?

No order in guarenteed or implied unless you specify it. So you'll need
another field to order by, generally the primary key works well..
--
Martijn van Oosterhout   <kleptog@svana.org>   http://svana.org/kleptog/
> Patent. n. Genius is 5% inspiration and 95% perspiration. A patent is a
> tool for doing 5% of the work and then sitting around waiting for someone
> else to do the other 95% so you can sue them.

Attachment

Re: Sorting, when values are equal....

From
Peter Eisentraut
Date:
Net Virtual Mailing Lists wrote:
> If I do something like:
>
> SELECT * FROM sometable ORDER BY somerow DESC LIMIT 1 OFFSET 2;
>
> .. and there are multiple rows in sometable where somerow is
> identical, am I assured that the values will always come back in the
> same order? .....

No.

> Or do I need to ensure that a second sort (such as
> the oid?) is used?

Yes.

--
Peter Eisentraut
http://developer.postgresql.org/~petere/