Мои тесты дают одинаковую скорость пробега. Я пытаюсь понять, что лучше использовать join или подзапрос . Я понимаю, что многое зависит от данных, индексов и самого DB , но я хочу различать его, поэтому, если записи в t1 меньше t2 тогда подзапрос должен быть эффективным, но если наоборот, то join .
EXPLAIN ANALYSE SELECT *
FROM safety_policies
WHERE safety_policies.area_id IN (SELECT areas.id
FROM areas
INNER JOIN departments ON areas.department_id = departments.id);
EXPLAIN ANALYSE SELECT safety_policies.*
FROM safety_policies
INNER JOIN areas ON safety_policies.area_id = areas.id
INNER JOIN departments ON areas.department_id = departments.id;