BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
suresh123
Calcite | Level 5

 

I created below code to pull the particular date.

%let date =2016-12-31;
proc sql;
connect to teradata   as tera ( user=testuser password=testpass );

create table new as select * from connection tera (select acct,org from dw.act
where date= &date.);
disconnect from tera;

quit;

 

I want to use previous date if the mentioned date in %let is not available in the datatset.

1 ACCEPTED SOLUTION

Accepted Solutions
SASKiwi
PROC Star

Something like this perhaps?

 

%let date =2016-12-31;
proc sql;
connect to teradata   as tera ( user=testuser password=testpass );
create table new as select * from connection tera (
select acct,org from dw.act as A
inner join
(select max(date) as DateMax 
 from dw.act
 where date <= &date.
) as B
on A.date = B.DateMax
);
disconnect from tera;
quit;

View solution in original post

5 REPLIES 5
PeterClemmensen
Tourmaline | Level 20

By the 'previous' date, I assume you mean the day before, so 2016-12-31 becomes 2016-12-30, right?

 

And what if the 2016-12-30 is not present either?

suresh123
Calcite | Level 5

Any date before the missing date

SASKiwi
PROC Star

Something like this perhaps?

 

%let date =2016-12-31;
proc sql;
connect to teradata   as tera ( user=testuser password=testpass );
create table new as select * from connection tera (
select acct,org from dw.act as A
inner join
(select max(date) as DateMax 
 from dw.act
 where date <= &date.
) as B
on A.date = B.DateMax
);
disconnect from tera;
quit;
PeterClemmensen
Tourmaline | Level 20

you can do something like this

 

proc sql;
   create table want as
   select * from sashelp.stocks
   where date >= "01nov2002"d
   group by stock
   having date=min(date);
quit;
suresh123
Calcite | Level 5
Does grouping change the report?
How to Concatenate Values

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.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 5 replies
  • 1547 views
  • 0 likes
  • 3 in conversation