Exist
select
book_key
from
book
where
exists (select book_key from sales);
In
select
book_key
from
book
where
book_key in (select book_key from sales);
The EXISTS clause is much faster than IN when the subquery results is very large. Conversely, the IN clause is faster than EXISTS when the subquery results is very small.
Also, the IN clause can’t compare anything with NULL values, but the EXISTS clause can compare everything with NULLs.