我正在使用SAS Enterprise Guide,并希望将列的最大值保存到全局宏变量中。
我已经知道如何将列的最大值保存到常规宏变量中:
proc sql;
SELECT max(column)
INTO: macro_variable
FROM dataIn
;
quit;
但是如何让SAS将列的最大值保存为全局变量?
预先感谢您的帮助。
答案 0 :(得分:1)
如果您将SQL查询作为开放代码(不在宏内),那么它将创建一个全局宏变量。如果您在宏内部运行,则只需在前面添加%GLOBAL语句。
proc sql;
%global macro_variable;
SELECT max(column)
INTO :macro_variable
FROM dataIn
;
quit;
请注意,如果您尝试创建一个与现有LOCAL宏同名的GLOBAL宏变量,那么%GLOBAL语句将导致错误。