How to repeat Proc SQL statements on Many datasets.

Reply
N/A
Posts: 1

How to repeat Proc SQL statements on Many datasets.

I have created a proc SQL statements to merge datasets in a given year. I would like to repeat this merge step for many years.

Here is my sample program for the year 1985.

proc sql;

create table folder1.OPT_price1985 as

select a.*, b.*

from folder1.OPT1985 as a , folder1.price1985 (keep = secid date close volume) as b

where a.secid  = b.secid and a.date = b.date;

quit;

I would like to repeat this like a do loop for 20 years. I tried the do loop macro but it did not work.

PROC Star
Posts: 1,088

Re: How to repeat Proc SQL statements on Many datasets.

Hi, anitha

This should get you started. Just change the 1984 %to 1986 to your range.

Tom

%macro MultiYearSQL;
%do yr=1984 %to 1986;

  proc sql;
   create table folder1.OPT_price&yr as
    select a.*, b.*
     from folder1.OPT&yr as a , folder1.price&yr (keep = secid date close volume) as b
      where a.secid  = b.secid and a.date = b.date;
  quit;

%end;
%mend MultiYearSQL;

%MultiYearSQL

Ask a Question
Discussion stats
  • 1 reply
  • 137 views
  • 0 likes
  • 2 in conversation