Hi all SAS Users,
Today I played around with the sashelp.class and I wrote a code as below to count the distinct name of students in each gender, and the code run flawlessly.
proc sql;
select sex
,count(distinct(name)) as no_of_name
from sashelp.class
group by sex;
quit;
Even I wrote the code, but I am not sure why we need both select and group by within this data step? I can understand that we need group by to announce the compiler that we want to deal with the name in each sex category but what select for?
Warmest regards.
I think we should learn SQL first, not SAS.
SELECT:
https://www.w3schools.com/sql/sql_select.asp
If you write the following code without gender, you will see the difference.
You will not be able to tell what the counted number corresponds to.
proc sql;
select count(distinct(name)) as no_of_name
from sashelp.class
group by sex;
quit;
First of all, this is not a DATA step, this is a PROC SQL step.
And the SQL statement that starts a query is SELECT. It is basic SQL syntax.
I think we should learn SQL first, not SAS.
SELECT:
https://www.w3schools.com/sql/sql_select.asp
If you write the following code without gender, you will see the difference.
You will not be able to tell what the counted number corresponds to.
proc sql;
select count(distinct(name)) as no_of_name
from sashelp.class
group by sex;
quit;
Don't miss out on SAS Innovate - Register now for the FREE Livestream!
Can't make it to Vegas? No problem! Watch our general sessions LIVE or on-demand starting April 17th. Hear from SAS execs, best-selling author Adam Grant, Hot Ones host Sean Evans, top tech journalist Kara Swisher, AI expert Cassie Kozyrkov, and the mind-blowing dance crew iLuminate! Plus, get access to over 20 breakout sessions.
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.