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

SAS Innovate 2025: Call for Content

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!

Submit your idea!

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.

Click image to register for webinarClick image to register for webinar

Classroom Training Available!

Select SAS Training centers are offering in-person courses. View upcoming courses for:

View all other training opportunities.

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