08-11-2014 10:53 AM
I have the dates like shown below used in the dataset and so I put those in Macro variables.
The date is numeric also
%let start =20130901;
%let end =20140831;
Could you help me understand why I am getting this kind of error?????
set have(keep=Account Date Numerator Denominator);
where same and Date between "&start"D and "&end"D ;
ERROR: Invalid date/time/datetime constant "20130901"D.
ERROR: Invalid date/time/datetime constant "20140831"D.
ERROR: Syntax error while parsing WHERE clause.
NOTE: WHERE clause has been cleared.
08-11-2014 11:54 AM
Use date constants as documented. Using mmm is the char abrevation not numbers. SAS(R) 9.4 Language Reference: Concepts, Third Edition
The constant will be convert behind to a number. The date variable is coming in... same type? (you should know)
same is now a variable, new one, getting initialized with (missing). As a boolean it is false.
..... update: same is accepted syntax as is between with where statement.
Between an known with SQL SAS(R) 9.4 SQL Procedure User's Guide not in a normal datastep if statement SAS(R) 9.4 Language Reference: Concepts, Third Edition
The between is however found at where processing SAS(R) 9.4 Language Reference: Concepts, Third Edition
The same and is also there. Nice, getting the old interactive approach back from my memory (FSP).
I only do not understand the "same and" coding in a batch/code programming way