2016-10-21 5 views
0

У меня есть таблица, которую мне нужно создать начальную точку для таблицы - это изменения в NPS. Я использую proc sql для определения значения этого.
Переменная «Kategorie» в таблице определяется как 100 символов.
В моем proc sql я определяю переменную как $ 100, однако, поскольку я ввожу значение, она автоматически выбирает длину 4 и отбивает все данные, когда я смешиваю их с существующим набором данных.SAS proc sql pre определить формат переменной

Итак, вопрос в том, как я могу предопределить переменную в 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; 

Я до сих пор учась так извиняюсь, если это супер базовый.
Thanks

ответ

3

Я думаю, что это решает вашу проблему.

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

Exacly как писал Джонас. 'format =' не будет назначать длину для varialbe. Для этого вы должны использовать 'length ='. Я помню также выражение 'label ='. – fl0r3k

+0

Не знаете, зачем вам приписывать переменную '$ 100.'. SAS знает, как печатать переменные символов без привязки форматов. – Tom

Смежные вопросы