2014-01-17 1 views

답변

6

- 그것은 온/운영은 데이터 세트을 생산 - 그것은 데이터 단계 내부 이해가되지 않습니다. SQL의 FROM 절을 사용하여 입력을 지정할 수 있으며 (set <setname> 데이터와 유사) SQL의 CREATE TABLE (data <setname>과 유사)을 사용하여 새 데이터 집합을 출력으로 만들 수 있습니다.

proc sql; 
    create table lib.new_table as select * from lib.table; 
run; 

당신이 다른 사용 전망을 하나의 기능을 혼합 중지 아무것도 적절한 예 :

data lib.new_set_view/view=lib.new_set_view; 
    set lib.some_set; 
    /* do normal operations and output's */ 
run; 

proc sql; 
    create table lib.other_set as select * from lib.new_set_view where something='whatever'; 
quit; 
+0

답장을 보내 주셔서 감사합니다. –

3

존의 완전히 정확하지만 dosubl이 허용 않습니다, 9.4이 추가됩니다 (속도 문제로 인해 일반적으로 좋은 아이디어는 아니지만) 어떤 방식 으로든 기능을 사용할 수 있습니다.

%macro procsql(sex); 
%global mycount; 
proc sql noprint; 
select count(1) into :mycount from sashelp.class where sex="&sex."; 
quit; 
%mend procsql; 

data addcount; 
set sashelp.class; 
rc=dosubl('%procsql('||sex||')'); 
count = input(symget("mycount"),best12.); 
run;