DATA TEST;
INPUT CUST A B C;
CARDS;
1 12 13 14
1 12 13 11
2 12 10 14
2 12 17 14
3 10 16 11
3 10 13 14
4 12 11 14
4 12 11 14
;
RUN;
GETTING ERROR: SUMMARY FUNCTIONS NESTED IN THIS WAY ARE NOT SUPPORTED
proc sql;
create table anal1 as
select cust
,SUM(sum(A,B,C)) AS TOT_ABC
,sum(A/calculated TOT_ABC) as A_tot_abc
,sum(B/calculated TOT_ABC) as B_tot_abc
,sum(C/calculated TOT_ABC) as C_tot_abc
from test
group by cust
;quit;
Yeah, syntax seems off a little bit, try below:
proc sql;
create table anal1 as
select cust
,SUM(sum(A,B,C)) AS TOT_ABC
,sum(A)/calculated TOT_ABC as A_tot_abc
,sum(B)/calculated TOT_ABC as B_tot_abc
,sum(C)/calculated TOT_ABC as C_tot_abc
from test
group by cust
;quit;
Yeah, syntax seems off a little bit, try below:
proc sql;
create table anal1 as
select cust
,SUM(sum(A,B,C)) AS TOT_ABC
,sum(A)/calculated TOT_ABC as A_tot_abc
,sum(B)/calculated TOT_ABC as B_tot_abc
,sum(C)/calculated TOT_ABC as C_tot_abc
from test
group by cust
;quit;
Available on demand!
Missed SAS Innovate Las Vegas? Watch all the action for free! View the keynotes, general sessions and 22 breakouts on demand.
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.