BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
GPatel
Pyrite | Level 9

 

Can somebody assist me .....How following query can be translated into either SAS HASH code (preferred)

or SAS QUERY code?

 

Below is a given SQL NATIVE Query ( note that there is + sign in a where clause):


SELECT DISTINCT A1.acod as acode,
                               A1.descp as FDESC,
                             catx(' - ', B1.scod,B1.tcod) as stcode
FROM X X0,
           A A1,
          B B1,

          C C1

WHERE
         A1.OFFICEID(+)  = X0.officeid
AND B1.STATUSCD(+) = x0.STATUSCD 

AND C1.Post(+) = X0.Post 

AND C1.Pre(+)  = X0.Pre

AND X0.Pre(+)  = C1.Pre

AND X0.Post(+) = C1.Post

     ;

Quit;

1 ACCEPTED SOLUTION

Accepted Solutions
art297
Opal | Level 21

@LinusH: I think the (+)  indicates a left or right outer join depending upon whether it is on the left or right variable (see: https://chartio.com/resources/tutorials/left-and-right-joins-using-the-plus-sign-in-oracle/ )

 

Art, CEO, AnalystFinder.com

View solution in original post

3 REPLIES 3
LinusH
Tourmaline | Level 20
Giving you a SAS data step hash program tight will probably not help you to understand how to do it yourself next time. I suggest that you study it, give it a try, and then come back with more specific questions.

This SQL of yours, what does the + sign do/mean?
Data never sleeps
art297
Opal | Level 21

@LinusH: I think the (+)  indicates a left or right outer join depending upon whether it is on the left or right variable (see: https://chartio.com/resources/tutorials/left-and-right-joins-using-the-plus-sign-in-oracle/ )

 

Art, CEO, AnalystFinder.com

LinusH
Tourmaline | Level 20
Oh.
Then I assume the SQL part of the question would resolve to - use LEFT/RIGHT JOIN...ON... in SAS (ANSI) SQL.
Data never sleeps

sas-innovate-2026-white.png



April 27 – 30 | Gaylord Texan | Grapevine, Texas

Registration is open

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 lock in 2025 pricing—just $495!

Register now

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
  • 3 replies
  • 1706 views
  • 1 like
  • 3 in conversation