Spec-Zone.ru › MySQL 9.2

15.2.15.11 Оптимизация подзапросов

Разработка продолжается, поэтому ни один совет по оптимизации не гарантирует долгосрочной эффективности. В приведенном ниже списке представлены некоторые интересные приёмы, которые вы можете попробовать. См. также Раздел 10.2.2, «Оптимизация подзапросов, производных таблиц, ссылок на представления и общих табличных выражений».

  • Переместите фрагменты извне подзапроса внутрь. Например, используйте такой запрос:

    SELECT * FROM t1
      WHERE s1 IN (SELECT s1 FROM t1 UNION ALL SELECT s1 FROM t2);
    

    Вместо такого запроса:

    SELECT * FROM t1
      WHERE s1 IN (SELECT s1 FROM t1) OR s1 IN (SELECT s1 FROM t2);
    

    Для другого примера используйте такой запрос:

    SELECT (SELECT column1 + 5 FROM t1) FROM t2;
    

    Вместо такого запроса:

    SELECT (SELECT column1 FROM t1) + 5 FROM t2;
    

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/mysql-8.4-en/optimizing-subqueries.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API