Thread: Alphanumeric natural order sorting : need generic solution

Alphanumeric natural order sorting : need generic solution

From
"Umashanker, Srividhya"
Date:

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

 

Table

 

Rows with orderby

 

I am expecting

 

 

1, bay1

2, bay2

10, bay10

11, bay11

 

-vidhya

Attachment

Re: Alphanumeric natural order sorting : need generic solution

From
Albe Laurenz
Date:
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


Re: Alphanumeric natural order sorting : need generic solution

From
John R Pierce
Date:
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
Attachment

Re: Alphanumeric natural order sorting : need generic solution

From
Martín Marqués
Date:
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
Attachment