DATA Step, Macro, Functions and more

Date Difference Criteria

Accepted Solution Solved
Reply
Occasional Contributor
Posts: 7
Accepted Solution

Date Difference Criteria

Hi All-

Wondering how to code the following scenario in SAS.

Ideally all the rows in the table should pass the below criteria for the 3 dates.

COLL_DT < REC_DT < RESULT_DT.

I now want to create a list of ppl on whom the above criteria is not met.


BOB


Accepted Solutions
Solution
‎10-03-2011 01:30 PM
Super User
Super User
Posts: 6,500

Date Difference Criteria

proc print ;

  where not (COLL_DT < REC_DT < RESULT_DT);

  var id COLL_DT REC_DT RESULT_DT;

run;

View solution in original post


All Replies
Solution
‎10-03-2011 01:30 PM
Super User
Super User
Posts: 6,500

Date Difference Criteria

proc print ;

  where not (COLL_DT < REC_DT < RESULT_DT);

  var id COLL_DT REC_DT RESULT_DT;

run;

Occasional Contributor
Posts: 7

Date Difference Criteria

Tom -

Thanks on your promp reply.  I want the output into a dataset as I need to merge later. I think the same WHERE statment in PROC SQL can get me into a dataset. But wondering if there is an approch in Datastep that does that for me.

Bob

Super User
Super User
Posts: 6,500

Date Difference Criteria

It is really no different.

data want;

   set have;

  where not (COLL_DT < REC_DT < RESULT_DT);

run;

If you need to limit it to one record per person/item/whatever then you might want something like:

data want;

  set have;

  where not (COLL_DT < REC_DT < RESULT_DT);

   by id;

   if first.id;

   keep id;

run;

PROC Star
Posts: 7,363

Date Difference Criteria

Same difference:

data want ;

   set have ( where=( not (COLL_DT < REC_DT < RESULT_DT)));

run;

☑ This topic is SOLVED.

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

Discussion stats
  • 4 replies
  • 165 views
  • 6 likes
  • 3 in conversation