今回はSORTプロシージャについて解説します。
/*sort1*/
data data1;
id1="1111"; id2="1111";
output;
id1="1111"; id2="2222";
output;
id1="1111"; id2="3333";
output;
id1="2222"; id2="1111";
output;
id1="2222"; id2="2222";
output;
id1="2222"; id2="3333";
output;
id1="3333"; id2="1111";
output;
id1="3333"; id2="2222";
output;
id1="3333"; id2="3333";
output;
run;
proc sort data=data1 out=data2 ; by id1 ; run;


- id1で昇順に並び替える。(既にソートされている。)
/*sort2*/
data data1;
id1="1111"; id2="1111";
output;
id1="1111"; id2="2222";
output;
id1="1111"; id2="3333";
output;
id1="2222"; id2="3333";
output;
id1="2222"; id2="2222";
output;
id1="2222"; id2="1111";
output;
id1="3333"; id2="2222";
output;
id1="3333"; id2="1111";
output;
id1="3333"; id2="3333";
output;
run;
proc sort data=data1 out=data2 ; by id1 ; run;


- id1で昇順に並び替える。(既にソートされている。)
- id2の中身はソートに影響しない点に注目。
/*sort3*/
data data1;
id1="1111"; id2="1111";
output;
id1="1111"; id2="2222";
output;
id1="1111"; id2="3333";
output;
id1="2222"; id2="1111";
output;
id1="2222"; id2="2222";
output;
id1="2222"; id2="3333";
output;
id1="3333"; id2="1111";
output;
id1="3333"; id2="2222";
output;
id1="3333"; id2="3333";
output;
run;
proc sort data=data1 out=data2 ; by id1 id2; run;


- id1, id2で昇順に並び替える。(既にソートされている。)
/*sort4*/
data data1;
id1="1111"; id2="1111";
output;
id1="1111"; id2="2222";
output;
id1="1111"; id2="3333";
output;
id1="2222"; id2="3333";
output;
id1="2222"; id2="2222";
output;
id1="2222"; id2="1111";
output;
id1="3333"; id2="2222";
output;
id1="3333"; id2="1111";
output;
id1="3333"; id2="3333";
output;
run;
proc sort data=data1 out=data2 ; by id1 id2; run;


- id1, id2で昇順に並び替える。