Alphanumeric natural order sorting : need generic solution
All,
I am looking for a generic solution to get the Alphanumeric sorting.
* The user can request for any field to be sorted.
* There is no specific format the alphanumeric string can follow. So that we can split using regex and split and sorted.
* Need an efficient way. Should not degrade performance.
I tried all possible collation example -- select * from test order by name collate "en_US";
Is there someone who has solved this problem with writing a function?
Below are more details -
Database
[cid:image001.png@01CE26FE.97F75300]
Table
[cid:image002.png@01CE26FE.97F75300]
Rows with orderby
[cid:image003.png@01CE26FE.97F75300]
I am expecting
1, bay1
2, bay2
10, bay10
11, bay11
-vidhya
Umashanker, Srividhya wrote:
I am looking for a generic solution to get the Alphanumeric sorting.
* The user can request for any field to be sorted.
* There is no specific format the alphanumeric string can follow. So that we can split using
regex and split and sorted.
* Need an efficient way. Should not degrade performance.I tried all possible collation example -- select * from test order by name collate "en_US";
Is there someone who has solved this problem with writing a function?
Below are more details -
I am expecting
1, bay1
2, bay2
10, bay10
11, bay11
The answer is the same as on the other mailing list:
Define precisely (not only with an example) what you mean
by "alphanumeric sorting" and you are more likely to get a helpful answer.
Yours,
Laurenz Albe
--
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general
On 3/22/2013 12:40 AM, Umashanker, Srividhya wrote:
Rows with orderby
I am expecting
1, bay1
2, bay2
10, bay10
11, bay11
... order by id,name;
--
john r pierce 37N 122W
somewhere on the middle of the left coast
2013/3/22 John R Pierce <pierce@hogranch.com>
On 3/22/2013 12:40 AM, Umashanker, Srividhya wrote:
Rows with orderby
I am expecting
1, bay1
2, bay2
10, bay10
11, bay11
... order by id,name;
That would be true if the last digits of the name attribute is equal to the
id attribute (which would mean that there is redundancy).
--
Martín Marqués
select 'martin.marques' || '@' || 'gmail.com'
DBA, Programador, Administrador