|
%macro test(num=, inds=, outds=, date_start=, date_end=);
proc sql noprint;
create table &outds(drop=visitnum namephone) as
select count(namephone) as visitnum, namephone, name, phone, visit_date, order
from (select catx(" ",name,phone) as namephone, name, phone, visit_date, order from &inds
having ("&date_start"d <= visit_date <= "&date_end"d))
group by namephone
having visitnum=&num
order by namephone;
quit;
%if not &sqlrc and &sqlobs=0 %then
%put NO NAME SATIFYS CONDITION: &num visits between &date_start and &date_end;
%mend test;
%test(num=1, inds=visit_history, outds=want, date_start=12JAN2014, date_end=15JAN2014)
|