最近、初心に戻ってハッシュオブジェクトのリファレンスを読み返していて初めて知ったこと。
outputメソッドにdataset:を複数指定できる!おぉ、知らなかった。
例えば
data Q1;
X=3;Y="A";output;
X=2;Y="B";output;
X=1;Y="A";output;
X=1;Y="A";output;
X=2;Y="B";output;
X=3;Y="B";output;
run;
といったデータがあって、
data _null_;
set Q1 end=eof;
if _N_=1 then do;
declare hash h1(dataset:"Q1",multidata:"Y",ordered:"Y");
h1.definekey("X");
h1.definedata(all:"Y");
h1.definedone();
end;
h1.ref();
if eof then h1.output(dataset:"OUT1(where=(Y='A'))"
,dataset:"OUT2(where=(Y='B'))");
run;
とすると
【OUT1】
【OUT2】
となる
お~、そうなんだ~。
複数指定したいと思ったことはあまりないけど、知っておいて損はないですね
0 件のコメント:
コメントを投稿