I have a table which the variables are in specific order as Output data, how can I sort it so they are presented in alphabetical order?
data WORK.DATA5;
set WORK.DATA4;
run;
@WarrenKuhfeld just a quick note that I edited your link to remove an extra space at the end.
A quick way by retrieving the column names from dictionary.columns and using call execute:
%let inlib=sashelp;
%let inset=class;
%let outlib=work;
%let outset=class;
proc sql;
create table vars as
select name
from dictionary.columns
where libname = upcase("&inlib.") and memname = upcase("&inset.")
order by name;
quit;
data _null_;
set vars end=done;
if _n_ = 1 then call execute("data &outlib..&outset.; format ");
call execute(name !! ' ');
if done then call execute("; set &inlib..&inset.; run;");
run;
You can easily wrap that into a macro with the four macrovars as macro parameters.
Good news: We've extended SAS Hackathon registration until Sept. 12, so you still have time to be part of our biggest event yet – our five-year anniversary!
Check out this tutorial series to learn how to build your own steps in SAS Studio.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.