*** 找出每个字符型变量的最大长度;
proc sql noprint;
select distinct cat(strip(name)," $",max(length)) into : varlen separated by " "
from dictionary.columns
where libname="WORK" and memname in ("TEST1","TEST2") and upcase(type)="CHAR"
group by name;
quit;
%put &varlen;
data test3;
length &varlen; /*Set length before set*/
set test1 test2;
run;