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;
April 27 – 30 | Gaylord Texan | Grapevine, Texas
Walk in ready to learn. Walk out ready to deliver. This is the data and AI conference you can't afford to miss.
Register now and save with the early bird rate—just $795!
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.
Ready to level-up your skills? Choose your own adventure.