Optimizing semijoin subqueries