Hi SAS Experts,
I looked at the round function explanation and read that a ,1 should result in no decimals but my calculation reads 100,0 now and not just 100.
proc sql ;
CREATE TABLE mytable AS
SELECT
ROUND((SUM(numberA)*100)/SUM(numberB),1) AS percent_ab
FROM aaaa;
QUIT;
Well it's rounded but you're looking to control the display.
proc sql ;
CREATE TABLE mytable AS
SELECT
ROUND((SUM(numberA)*100)/SUM(numberB),1) AS percent_ab format=8.
FROM aaaa;
QUIT;
Not quite sure exactly what you mean by "calculation reads 100,0"
Round is applied AFTER the results of
(SUM(numberA)*100)/SUM(numberB)
The FORMAT of the varaible percent_ab could be forcing the appearance of decimals. If the format is something like 5.1 it will force the appearance of 1 decimal, showing a 0 when none are actually present.
Well it's rounded but you're looking to control the display.
proc sql ;
CREATE TABLE mytable AS
SELECT
ROUND((SUM(numberA)*100)/SUM(numberB),1) AS percent_ab format=8.
FROM aaaa;
QUIT;
Are you ready for the spotlight? We're accepting content ideas for SAS Innovate 2025 to be held May 6-9 in Orlando, FL. The call is open until September 25. Read more here about why you should contribute and what is in it for you!
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.