problem with sorting using 'ORDER BY' when character field is filled with numerical values - Mailing list pgsql-general

From Dragan Matic
Subject problem with sorting using 'ORDER BY' when character field is filled with numerical values
Date
Msg-id 40ACCC4F.8050404@panforma.co.yu
Whole thread Raw
Responses Re: problem with sorting using 'ORDER BY' when character field is filled with numerical values  (Thomas Beutin <tyrone@laokoon.IN-Berlin.DE>)
List pgsql-general
If I have a table t with column c which is defined as char(5) and fill
it with following values:

insert into t (c) values ('    1')
insert into t (c) values ('    2')
insert into t (c) values ('    3')
insert into t (c) values ('    4')
insert into t (c) values ('   11')
insert into t (c) values ('   12')
insert into t (c) values ('   14')
insert into t (c) values ('   24')
insert into t (c) values ('   21')
insert into t (c) values ('   31')
insert into t (c) values ('  333')

and then do the following: SELECT C FROM T ORDER BY C
Postgres gives me the following

    1
   11
   12
   14
    2
   21
   24
    3
   31
  333
    4

the same thing done with MS SQL server gives this as a result:

    1
    2
    3
    4
   11
   12
   14
   21
   24
   31
  333

which is the result I find more logical, meaning the user would expect
data sorted this way. Is there some way to make Postgres sort elements
in this way (setting sort order or collation, I suppose)? Tnx in advance

Dragan




---------------------------(end of broadcast)---------------------------
TIP 1: subscribe and unsubscribe commands go to majordomo@postgresql.org




pgsql-general by date:

Previous
From: Dave Smith
Date:
Subject: Re: problem with sorting using 'ORDER BY' when character
Next
From: "Joe Erickson"
Date:
Subject: Re: problem with sorting using 'ORDER BY' when character field is filled with numerical values