我下面有一个 SAS 宏不起作用——此代码片段不返回任何值,因为 where 语句不起作用。有人有主意吗?我尝试添加 %str 但这也不起作用。
%macro refreshments(beverage_type=);
proc sql;
select
*
where drink_type = '&beverage_type.'
;
quit;
%mend
%refreshments(Sprite);
Thanks.
宏变量不会在单引号中解析。您还缺少 FROM 子句,并且宏参数作为位置提供(而不是名称=值对)。请尝试以下操作:
%macro refreshments(beverage_type=);
proc sql;
select *
from YOURTABLE
where drink_type = "&beverage_type";
%mend;
%refreshments(beverage_type=Sprite);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)