全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
3655 1
2017-02-12
各位高手好,我在编写一段宏程序时遇到一个问题,从sql语句中选取的变量有时候因为本身表里面是空值,接下来没法操作,不知道如何判断,比如在宏中写了这么一段:
proc sql;
select var1,var2,var3,var4 into :varname1,:varname2,:varname3,:varname4 from combi_id where id = &i.;
quit;

%let var=%sysfunc(catx(&space.,&varname1.,&varname2.));

        %if &varname3. ^= %str() %then %do;
                %let &var.=%sysfunc(catx(&space.,&var.,&varname3.));
                %put &varname3.;
        %end;
        
        %if &varname4. ^= %str() %then %do;
                %let &var.=%sysfunc(catx(&space.,&var.,&varname4.));
        %end;

%put var=&var.;


其中varname3和varname4可能为空值,想弄个判断再拼字符串,结果不知道如何写if语句,上面那种写法请高手看看有没有问题,谢谢!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2017-2-16 13:03:07
%if %length(&var3)...
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群