Re: How is sorting work? - Mailing list pgsql-general

From Steve Atkins
Subject Re: How is sorting work?
Date
Msg-id 6A86173A-E793-4E04-AD2E-42D70A505522@blighty.com
Whole thread Raw
In response to How is sorting work?  (Quang Thoi <Quang_Thoi@symantec.com>)
Responses Re: How is sorting work?  (Quang Thoi <Quang_Thoi@symantec.com>)
List pgsql-general
On May 30, 2014, at 5:13 PM, Quang Thoi <Quang_Thoi@symantec.com> wrote:

> Any one knows how sorting works?
>
> I am using postgresql 9.3 and runs on Linux machines.
> I see different sorting order for the same set of return data.
>
> On linux machines, databases are configured the same.
> Database have encoding set to 'utf8' and locale='C'
>
> query:
> Select host_id, host_name from host_view order by host_id
>
> hos_id (character varying 128)
> host_name (character varying 255)
>
> - On one linux machine (locate in U.S) , the query returned following:
>
> host_id            host_name
> ------------        ------------------
> "00017486";        "lnx2.xx.yy.com"
> "00017486";        "lnx1.xx.yy.com"
>
> - On a different linux machine (locate in India), the query returned following:
>
> host_id            host_name
> ------------        ------------------
> "00017486";        "lnx1.xx.yy.com"
> "00017486";        "lnx2.xx.yy.com"

Both results are correct. If you don't specify a sort order, postgresql
will return results in whatever order is convenient - which won't be
consistent from query to query or machine to machine.

You're only sorting by host_id. If you want to sort consistently by
host_id and host_name, so that the sort order is well defined for
identical host_ids, you'll want to do something like

select host_id, host_name from host_view order by host_id, host_name.

Cheers,
  Steve

pgsql-general by date:

Previous
From: Quang Thoi
Date:
Subject: How is sorting work?
Next
From: Quang Thoi
Date:
Subject: Re: How is sorting work?