【发布时间】:2013-06-28 18:02:55
【问题描述】:
是否可以将%let 语句分配为等于表中调用的值?我知道我可以使用以下代码循环执行此操作。
proc sql noprint;
select NameID into :Name separated by " "
from Registration;
quit;
proc sql noprint;
select count (*) into :NumNAME
from Registration;
quit;
有没有办法在循环之外完成它,或者只需一步,通过创建一些%let Name = 来直接调用表?我意识到这和以前的question 相似,只是我比较挑剔。
【问题讨论】:
-
你在问/说什么没有任何意义。这里没有循环,只是您需要使用循环来访问那里的数据。你到底想做什么?无论如何,您所描述的具体事物都不是一个好主意,因此了解最终结果可能会有所帮助。
-
我创建了一个表格来查找附加到名称的数字。我想将找到的数字设置为变量,而无需手动将其设置为该数字。我不知道是否有一种方法可以将 let 语句设置为进入表并使用该数字,而无需将数字输入为该变量,或者 let 语句是否可以搜索表。
-
这不是我想知道的。你想整体做什么?您通常不应该以听起来像是在尝试的方式使用变量 - SAS 不是一种具有全局变量或类似内容的编程语言,数据应该存储在数据集中,而不是宏变量中。
标签: sas