data emp;
input Name$ Station Salary;
datalines;
Bob 1 2000
Steve 2 1750
Mark 3 2050
Lisa 4 2200
Hans 5 2000
;
run;
proc sql;
select * from emp e1, emp e2
where e1.Salary =e2.Salary and e1.name ne e2.name ;
quit;
/*OR*/
proc sql;
select * from emp
where salary in (select salary from emp group by salary
having count(*)>1);
quit;
Get same salary using Datastep
The great thing is that you've got both SQL and the SAS data step which gives you a choice.
For the data step to work the data needs to be sorted by salary.
proc sort data=emp;
by salary;
run;
data want;
set emp;
by salary;
if not (first.salary and last.salary);
run;
The great thing is that you've got both SQL and the SAS data step which gives you a choice.
For the data step to work the data needs to be sorted by salary.
proc sort data=emp;
by salary;
run;
data want;
set emp;
by salary;
if not (first.salary and last.salary);
run;
Good news: We've extended SAS Hackathon registration until Sept. 12, so you still have time to be part of our biggest event yet – our five-year anniversary!
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.