BookmarkSubscribeRSS Feed
☑ This topic is solved. Need further help from the community? Please sign in and ask a new question.
nstdt
Quartz | Level 8

I know that the following SQL code is used to get the second-lowest value overall from a table:

PROC SQL;
SELECT id, min (value) 
FROM table_name
WHERE value NOT IN (SELECT min (value) 
                          FROM table_name); 

 

How can I modify the Sql code I have to achieve this? Or is there any other way to do this?

1 ACCEPTED SOLUTION

Accepted Solutions
yabwon
Amethyst | Level 16

data step it for this task in SAS:

data have;
input id value;
cards;
1 1
1 2 
1 3
3 300
3 200
3 100
2 3
2 4 
2 5
;
run;
proc print data=have;
run;


proc sort data=have out=want;
  by id value;
run;

data want;
  set want;
  by id;

  if first.id then Marker=0;
  Marker+1;

  if marker = 2;
  drop Marker;
run;

proc print data=want;
run;

Bart

_______________
Polish SAS Users Group: www.polsug.com and communities.sas.com/polsug

"SAS Packages: the way to share" at SGF2020 Proceedings (the latest version), GitHub Repository, and YouTube Video.
Hands-on-Workshop: "Share your code with SAS Packages"
"My First SAS Package: A How-To" at SGF2021 Proceedings

SAS Ballot Ideas: one: SPF in SAS, two, and three
SAS Documentation



View solution in original post

2 REPLIES 2
PaigeMiller
Diamond | Level 26

Don't use SQL. Use PROC SORT or PROC RANK.

--
Paige Miller
yabwon
Amethyst | Level 16

data step it for this task in SAS:

data have;
input id value;
cards;
1 1
1 2 
1 3
3 300
3 200
3 100
2 3
2 4 
2 5
;
run;
proc print data=have;
run;


proc sort data=have out=want;
  by id value;
run;

data want;
  set want;
  by id;

  if first.id then Marker=0;
  Marker+1;

  if marker = 2;
  drop Marker;
run;

proc print data=want;
run;

Bart

_______________
Polish SAS Users Group: www.polsug.com and communities.sas.com/polsug

"SAS Packages: the way to share" at SGF2020 Proceedings (the latest version), GitHub Repository, and YouTube Video.
Hands-on-Workshop: "Share your code with SAS Packages"
"My First SAS Package: A How-To" at SGF2021 Proceedings

SAS Ballot Ideas: one: SPF in SAS, two, and three
SAS Documentation



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
  • 2 replies
  • 2266 views
  • 0 likes
  • 3 in conversation