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

Attempting to update a field in my table that requires a join from another table as such:

proc sql;

update work.table_01 as t1

set t1.region = 'North'

from work.table_01 as t1 inner join work.table_02 as t2 on t1.ID = t2.ID

where

t2.state in ('PA');

quit;

Received errors in the from clause and also read that SAS does not recgonize joins in the update statement.  Is there another way to write this proc sql or maybe adding a sub query (not sure where in the code) to get this to work?  If someone can provide an example based on above, that would be great as well.

Thanks in advance

1 ACCEPTED SOLUTION

Accepted Solutions
PGStats
Opal | Level 21

Not always easy to do UPDATEs in SAS/SQL. But in this case, it is quite simple:

proc sql;

update table_01

set region = 'North'

where ID in (select ID from table_02 where state in ('PA'));

quit;

PG

PG

View solution in original post

2 REPLIES 2
PGStats
Opal | Level 21

Not always easy to do UPDATEs in SAS/SQL. But in this case, it is quite simple:

proc sql;

update table_01

set region = 'North'

where ID in (select ID from table_02 where state in ('PA'));

quit;

PG

PG
PhatRam33
Fluorite | Level 6

That did the trick! Thank you very much =D

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

What is Bayesian Analysis?

Learn the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.

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
  • 1522 views
  • 0 likes
  • 2 in conversation