## sorting varaible

Solved
Frequent Contributor
Posts: 147

# sorting varaible

I have character variable with numerical values...While sorting I am getting the following way.....is there way that i can get as 1,2,3,4,5,6,,7,8 instead of 1,1,10,10,11,11

100010002    1

100010002    1

100010002    10

100010002    10

100010002    11

100010002    11

100010002    11

100010002    12

100010002    12

100010002    13

100010002    13

100010002    2

100010002    2

100010002    3

100010002    4

100010002    5

100010002    6

100010002    7

100010002    8

100010002    8

Accepted Solutions
Solution
‎11-24-2014 11:37 AM
Posts: 3,167

## Re: sorting varaible

proc sort data=have SORTSEQ=LINGUISTIC;

by x; run;

All Replies
Solution
‎11-24-2014 11:37 AM
Posts: 3,167

## Re: sorting varaible

proc sort data=have SORTSEQ=LINGUISTIC;

by x; run;

Posts: 3,852

## Re: sorting varaible

Do you need numeric_collation sub-option?

Frequent Contributor
Posts: 147

## Re: sorting varaible

I have charceter variable but it has only numeric values........so i would like do sorting the way we do it for numeric but for character variable......

Posts: 3,167

## Re: sorting varaible

Yes, DN, you are right, so for Proc Sort:

proc sort data=have SORTSEQ=LINGUISTIC (numeric_collation=on)

by x; run;

Or if using Proc SQL:

proc sql;

create table want (drop=skey) as

select *, sortkey(x,'','','','NUMERIC','') as skey

from have

order by skey;

quit;

🔒 This topic is solved and locked.