Ответ выше неправильный.
Что делает multi_query под капотом?
blockquote>Он просто отправляет все запросы на сервер сразу , при получении результата только для первого. Таким образом, multi_query является своего рода оболочкой для выполнения асинхронного запроса .
Много ли пытается несколько раз на сервер х число раз и агрегирует результаты?
blockquote>multi_query попадает на сервер только один раз. Все остальные образы, которые вы должны сделать вручную, вызывая next_result, чтобы получить все результаты других запросов.
Есть ли случай, когда одиночные запросы могут быть более эффективными, чем несколько запросов?
blockquote>этот вопрос предполагает, что есть случай, когда multi_query быстрее. Это сомнительное утверждение. Для обычного запроса сетевая латентность является незначительной частью всего времени выполнения. Если вы действительно заинтересованы в скорости на такой маркер , взгляните на HandlerSocket - он будет быстро вспыхивать. Однако для регулярной разработки такая разница между одним и несколькими запросами была бы вашей наименее заботой. Если вы заботитесь о реальных вещах, а не о мнимых.