BookmarkSubscribeRSS Feed
EinarRoed
Pyrite | Level 9

I want to identify all rows in the table SOURCE which don't exist in the table TARGET. This is easily done via this simple code:

 

proc sql;
	create table NEW as
	select src.primkey from SOURCE src
	left join TARGET tgt on (src.primkey = tgt.primkey)
	where tgt.primkey is missing;
quit;

SOURCE is a SAS-table that contains around 3 million rows.

TARGET is a PostgreSQL-table that contains around 750 million rows. It has an index on primkey.

 

Do you know if there's a more efficient way to perform this operation? What's the most optimized way to check if a source row exists in a very large target table?

1 REPLY 1

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
  • 1 reply
  • 517 views
  • 1 like
  • 2 in conversation