Sas 在where语句中选择into输出

Sas 在where语句中选择into输出,sas,Sas,我想使用proc sql中的where语句来选择列x中的变量,该列已分配给宏变量&等级 以下示例不起作用,需要修复: data work.data; input x$ y; datalines; a 1 a . b 2 c 3 ; run; proc sql; select distinct x into :grades separated by ' ' from work.data; quit; %put &grades; *

我想使用proc sql中的
where
语句来选择列
x
中的变量,该列已分配给宏变量
&等级

以下示例不起作用,需要修复:

data work.data;
    input x$ y;
    datalines;
    a 1
    a .
    b 2
    c 3
    ;
run;

proc sql; select distinct x into :grades separated by ' ' from work.data; quit;

%put &grades; *--- I'M MISSING QUOTES AROUND THE VALUES??;

proc sql; select * from work.data where x in (&grades); quit;

如果要向值添加引号,请使用
quote()
函数

select distinct quote(x)
  into :grades separated by ' ' 
  from work.data
;