This question is Not Answered.(Mark as assumed answered)
Goli Magoli Oct 10, 2012 12:59 PM
I have a SAS program that uses the micro and at the end is generating the following tables that I want to export it to SQL:
NCxC1993
NCxC1994
NCxC1995
NCxC1996
NCxC1997
I can use the following commands to create a table in SQL but I would like to use a loop:
/*proc sql;
create table sqldb.cxcuse_dense_1993 as
select * from NCxC1993;
create table sqldb.cxcuse_dense_1994 as
select * from NCxC1994;
create table sqldb.cxcuse_dense_1995 as
select * from NCxC1995;
create table sqldb.cxcuse_dense_1996 as
select * from NCxC1996;
create table sqldb.cxcuse_dense_1997 as
select * from NCxC1997;
quit;
run;*/
I am using the following loop but for some reason without any error does not create the tables in SQL (but the above command does)
%macro sqlloop(start=,end=);
%do year = &start %to &end;
create table sqldb.cxcuse_dense_&year as
select * from NCxC&year;
%end
%mend;
proc sql;
%sqlloop(start=1994,end=1995)
quit;
run;
/*-----------------------------------------------------------------------*/
quit;
run;
is there any thoughts on why the sqlloop does not work.
Thank you
try adding ";" after %end
wow, Thank you so much
Are you ready for the spotlight? We're accepting content ideas for SAS Innovate 2025 to be held May 6-9 in Orlando, FL. The call is open until September 25. Read more here about why you should contribute and what is in it for you!
Learn how use the CAT functions in SAS to join values from multiple variables into a single value.
Find more tutorials on the SAS Users YouTube channel.