Pro c Sql Выход - PullRequest
       6

Pro c Sql Выход

0 голосов
/ 18 июня 2020

Здравствуйте, я новичок в sas, и я создал код sql, и теперь мне нужно перенаправить вывод в /tmp/output.txt.

proc sql;
select (COUNT(IDCUENTACLIENTE)) AS COUNT_of_IDCUENTACLIENTE from  S1.CUENTACLIENTE  where segmentonivel1  = 'Altas Recientes'
and segmentonivel2 = 'Masivo'
GROUP BY SEGMENTONIVEL1,SEGMENTONIVEL2;
quit;

Я попытался поставить

data _null_;
  FILE "/tmp/MyFile.txt";
run;

, но файл не создается.

Кто-нибудь может мне помочь?

Ответы [ 2 ]

0 голосов
/ 18 июня 2020

Если вы хотите использовать определение имени файла и не хотите записывать имя файла в datastep:

proc sql;
    create table tableName as
        select (COUNT(IDCUENTACLIENTE)) AS COUNT_of_IDCUENTACLIENTE from  
        S1.CUENTACLIENTE  where segmentonivel1  = 'Altas Recientes'
            and segmentonivel2 = 'Masivo'
        GROUP BY SEGMENTONIVEL1,SEGMENTONIVEL2;
quit;

filename x "c:\temp\teszt.txt";

data _null_;
 file x;
 set work.tableName;
 put COUNT_of_IDCUENTACLIENTE;
run;
0 голосов
/ 18 июня 2020

У меня есть предложение ... Сначала создайте набор данных с помощью запроса. В вашем коде у меня есть сомнения по поводу используемой вами GROUP BY. Без ошибок запускается? Второй экспорт в текстовый файл, как показано ниже

proc sql;
   create table work.temp as 
   select SEGMENTONIVEL1,SEGMENTONIVEL2, (COUNT(IDCUENTACLIENTE)) AS  
    COUNT_of_IDCUENTACLIENTE from  S1.CUENTACLIENTE  
   where segmentonivel1  = 'Altas Recientes'
   and segmentonivel2 = 'Masivo'
   GROUP BY SEGMENTONIVEL1,SEGMENTONIVEL2;
quit;
/* code to create TXT file  */
data _null_;
  FILE "/tmp/MyFile.txt";
  set work.temp;
  put 
     SEGMENTONIVEL1
     SEGMENTONIVEL2
     COUNT_of_IDCUENTACLIENTE;
run;
...