Оптимизируем запись запросов с JOIN в MySQL
Eсли поля, по которым осуществляется JOIN названы одинаково в обоих таблицах, то для обоих типов JOIN'a (INNER и OUTER), можно сократить запись.
Вместо такой записи:
-
SELECT *
-
FROM `users` `u`
-
LEFT JOIN `user_profiles` `up` ON (`up`.`user_id` = `u`.`user_id`)
-
LEFT JOIN `user_groups` `ug` ON (`ug`.`group_id` = `u`.`group_id`)
-
WHERE `u`.`user_id` = 10
можно использовать более короткую:
-
SELECT *
-
FROM `users` `u`
-
LEFT JOIN `user_profiles` `up` USING(`user_id`)
-
LEFT JOIN `user_groups` `ug` USING(`group_id`)
-
WHERE `u`.`user_id` = 10
