我試圖使用macrovariable在SAS宏作爲值在newcolumn 例如:宏賦值在SQL Server通過
%let macrovariable = value;
我想在newcolumn每一個值指定爲值 怎麼能做到這一點?我在下面用這個代碼,但最終GET「& macrovariable」而不是「價值」。
SELECT CAST('¯ovariable.' as char) newcolumn
我試圖使用macrovariable在SAS宏作爲值在newcolumn 例如:宏賦值在SQL Server通過
%let macrovariable = value;
我想在newcolumn每一個值指定爲值 怎麼能做到這一點?我在下面用這個代碼,但最終GET「& macrovariable」而不是「價值」。
SELECT CAST('¯ovariable.' as char) newcolumn
嘗試使用雙引號而不是單引號。
所以..這裏的答案(以防萬一有人想知道)
SELECT CAST(%str(%')¯ovariable.%str(%') as char) newcolumn
通過這種方式,它實際上是強制宏與直通SQL Server之前單一qotation閱讀。
很棘手,很好玩 - 實際上。
的清潔器的方法是:SELECT CAST(%BQUOTE( '&MACROVARIABLE')爲char)newcolumn – 2011-03-17 12:54:37
這是真棒!謝謝克里斯 – iamjeannie 2011-03-18 18:27:55
* Add single quotes around mv;
data _null_;
call symput('mvsq',"'&mv.'");
run;
%put &mvsq; *debug;
...
select &mvsq. ...
感謝,爲快速答覆,但是當我使用雙引號,它要求列「值」 – iamjeannie 2011-03-15 17:00:23
我能夠在本機SAS沒有問題運行。您是否在Enterprise Guide中運行?可能有一個選項可以關閉默認提示。 – 2011-03-15 17:23:30
我用過9.3。它要求我的字段或列名爲「價值」,而不是承認值作爲actaul值。 – iamjeannie 2011-03-15 17:40:18