Help using Base SAS procedures

Can we use case when and group by together?

Reply
Occasional Contributor
Posts: 5

Can we use case when and group by together?

  I had a database like this:

 

Account_NumberMonthPayment_Method
10 
11PI
12PI
20 
21 
22 
23 

 

For some data record error reason, for example, as the account number = 1, when month =0, the payment method should be PI instead of missing. but the account number 2 is fine. Since all of its months should be missing. So the correct database would be :all of the months should be PI or all of the months should be missing for the same account.

So my question is: for the account like 1, is that possible to let payment method = PI when month = 0? The problem only occur when month = 0 in the problem account.

I try  CASE WHEN MONTH = 1 AND Payment_method= 'PI'
THEN (CASE WHEN MONTH =0 THEN PAYMENT_METHOD = 'P' END)
end

group by Account_number

 

It doesn't work at all...

 

Thanks in advance

Super User
Posts: 19,789

Re: Can we use case when and group by together?

You can use MAX/MIN with SQL.

 

proc sql;
create table want as
select *, max(payment_method) as payment_method_max
from have;
quit;
Occasional Contributor
Posts: 5

Re: Can we use case when and group by together?

Thank you! I added a group by and it works out!!!

Ask a Question
Discussion stats
  • 2 replies
  • 194 views
  • 1 like
  • 2 in conversation