Comparing dates in DS2

Accepted Solution Solved
Reply
New Contributor
Posts: 3
Accepted Solution

Comparing dates in DS2

Hi all, I am brand new to DS2 and I wonder if you can give any suggestions on comparing dates. The logic is pretty straightforward. I convert the string to the date and then convert to the double for comparing purpose. Everything is fine till I change the hard coded '2018-06-04' with a variable 'date_String'. Then the date conversion step fails. Do I miss anything? Thanks very much! Here is my code:

 

data _null_;
     method run();
         dcl date dt1 dt2 dt3;
         dcl double ddt1 ddt2 ddt3 we;
          dcl varchar(10) date_String;

 

          date_String = '2018-06-04'

           Dt1 = date date_String;
           Dt2 = date '2018-06-05';
           Dt3 = date '2019-01-04';


              ddt1 = to_double(dt1);
              ddt2 = to_double(dt2);
             ddt3 = to_double(dt3);

 

             put ddt1= ddt2= ddt3=;

 

             if ddt1 < ddt3 AND ddt2 < ddt3 then we = 5.3;
             put we=;
end;
enddata;
run;


Accepted Solutions
Solution
‎05-21-2018 07:52 AM
Respected Advisor
Posts: 4,736

Re: Comparing dates in DS2

[ Edited ]

@lruan1

You need to use the to_date() function.

      dcl varchar(10) date_String;
      date_String = '2018-06-04';
      Dt1 = to_date(date_String);

 

I don't understand why you believe you have to convert the Date type to Double for comparison. Using Date should be more than fine.

 

May be this link will be helpful to you: http://support.sas.com/kb/51/769.html 

View solution in original post


All Replies
Solution
‎05-21-2018 07:52 AM
Respected Advisor
Posts: 4,736

Re: Comparing dates in DS2

[ Edited ]

@lruan1

You need to use the to_date() function.

      dcl varchar(10) date_String;
      date_String = '2018-06-04';
      Dt1 = to_date(date_String);

 

I don't understand why you believe you have to convert the Date type to Double for comparison. Using Date should be more than fine.

 

May be this link will be helpful to you: http://support.sas.com/kb/51/769.html 

New Contributor
Posts: 3

Re: Comparing dates in DS2

Thanks very much, Patrick! As you said, to_data() function is sufficient to compare the dates without any more conversion. It works great!

☑ This topic is solved.

Need further help from the community? Please ask a new question.

Discussion stats
  • 2 replies
  • 173 views
  • 1 like
  • 2 in conversation