DerekWatling
asked on
Sorting strings numericaly
I am needing to sort a string column numerically. The data looks something like
1, 10, 12, 37, 5, 3-4, cnr
and needs to be sorted as
1, 3-4, 5, 10, 12, 37, cnr
using LPAD with zeros I have got as far as
1, 5, 10, 12, 37, 3-4, cnr
1, 10, 12, 37, 5, 3-4, cnr
and needs to be sorted as
1, 3-4, 5, 10, 12, 37, cnr
using LPAD with zeros I have got as far as
1, 5, 10, 12, 37, 3-4, cnr
SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
This does the same thing without returning the extra columns.
select
StreetNo,
from tbl_fh_owner
order by
lpad(abs(StreetNo), 25, '0'),
StreetNo,
lpad(abs(StreetNo), 25, '0') like lpad(StreetNo, 25, '0')
select
StreetNo,
from tbl_fh_owner
order by
lpad(abs(StreetNo), 25, '0'),
StreetNo,
lpad(abs(StreetNo), 25, '0') like lpad(StreetNo, 25, '0')
Well, absent the comma anyway.
select
StreetNo
from tbl_fh_owner
order by
lpad(abs(StreetNo), 25, '0'),
StreetNo,
lpad(abs(StreetNo), 25, '0') like lpad(StreetNo, 25, '0')
select
StreetNo
from tbl_fh_owner
order by
lpad(abs(StreetNo), 25, '0'),
StreetNo,
lpad(abs(StreetNo), 25, '0') like lpad(StreetNo, 25, '0')
ASKER
select
StreetNo,
lpad(abs(StreetNo), 25, '0') as sort1,
lpad(abs(StreetNo), 25, '0') like lpad(StreetNo, 25, '0') as sort2
from tbl_fh_owner
order by sort1, StreetNo, sort2