•You can’t always un-nest sub-queries (it’s tricky).
•But you can often use a semi-join to reduce the computation cost of the inner query.
•A magic set is a superset of the possible bindings in
the result of the
sub-query.
•Also called “sideways information passing”.
•Great idea; reinvented every few years on a
regular basis.