1Performance difference
When using a subquery, IN will run the entire subquery first, load all the IDs into memory, and then filter. EXISTS stops executing the subquery the very microsecond it finds a single match. For massive tables, EXISTS is astronomically faster than IN.
