SAS proc sql预定义变量

时间:2016-10-21 12:22:13

标签: sql sas format

我有一个表,我需要为表创建一个起点 - 表是NPS的变化。我使用proc sql来定义它的值。
" Kategorie"表中的变量定义为100个字符长 在我的proc sql中,我将变量定义为$ 100,但是因为我键入了值,它会自动选择长度为4并在我将其与现有数据集混合时切断所有数据。

所以问题是如何在proc sql中预定义变量,使得长度不被设置为4。 我有办法解决这个问题,但我宁愿正确而干净地做到这一点。

rsubmit ;
proc sql;
create table NPS_START_overall as select
'_NPS' as Kategorie format $100.,
(sum(Promotor)/count(land)-sum(detraktor)/count(land))*100 as RelativeEffect format 8.2
from erk_a;
quit;
endrsubmit;  

如果这是超级基本的话,我仍在学习如此道歉 感谢

2 个答案:

答案 0 :(得分:4)

我认为这可以解决您的问题。

select '_NPS' as NPS format=$100. length=100 

答案 1 :(得分:0)

以下两种方法将有助于将列的值从指数表达式更改为人类可读的格式

更改数字列的格式:

select  put(column_name,NEWBSTw.) AS alias from table_name

更改字符列的格式:

select  column_name as alias format=$100 from table_name