BookmarkSubscribeRSS Feed
dht115
Calcite | Level 5

Hello, 

 

I have following step in proc sql. 

How can we get this step in one datastep instead of data and sort procedure

/*Have*/
proc Sql noprint;
	create table cars as 
		select * from sashelp.cars
			where upcase(make)="%upcase(HONDA)"
				order by length, mpg_city, mpg_highway; /*Replaced element with study_arm_desc variable. DT*/
quit;


/*want*/

data cars;
set sashelp.cars;
if make = "Honda";
*to add sort steps in this step;
run;

proc sort data=cars;
by length, mpg_city, mpg_highway;
run;

 

1 REPLY 1
PaigeMiller
Diamond | Level 26

How about this:

 

proc sort data=sashelp.cars out=cars;
    where make='Honda';
    by length mpg_city mpg_highway;
run;

 

Also, your SQL code can be simplified with

 

where upcase(make)="HONDA"

 

or better yet

 

where make='Honda'
--
Paige Miller

hackathon24-white-horiz.png

The 2025 SAS Hackathon has begun!

It's finally time to hack! Remember to visit the SAS Hacker's Hub regularly for news and updates.

Latest Updates

How to Concatenate Values

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.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 1 reply
  • 819 views
  • 2 likes
  • 2 in conversation