За вътрешни обединения една заявка има смисъл, тъй като получавате само съвпадащи редове. За левите обединения множеството заявки са много по-добри... вижте следния сравнителен тест, който направих:
-
Единична заявка с 5 присъединявания
заявка:8.074508 секунди
размер на резултата:2268000
-
5 заявки подред
комбинирано време за заявка:0,00262 секунди
размер на резултата:165 (6 + 50 + 7 + 12 + 90)
.
Имайте предвид, че получаваме едни и същи резултати и в двата случая (6 x 50 x 7 x 12 x 90 =2268000)
левите съединения използват експоненциално повече памет с излишни данни.
Ограничението на паметта може да не е толкова лошо, ако правите обединяване само на две таблици, но обикновено три или повече и си струва различни заявки.
Като странична бележка, моят MySQL сървър е точно до моя сървър на приложения... така че времето за връзка е незначително. Ако времето ви за връзка е в секунди, тогава може би има полза
Франк