Spec-Zone.ru › MariaDB

ОБЪЯСНЕНИЕ FORMAT=JSON

Обзор

EXPLAIN FORMAT=JSON — это вариант команды EXPLAIN, который генерирует вывод в формате JSON. Вывод всегда содержит одну строку с одним столбцом, озаглавленным "JSON". Содержимое — это представление плана запроса в формате JSON, отформатированное для удобочитаемости:

EXPLAIN FORMAT=JSON SELECT * FROM t1 WHERE col1=1\G
*************************** 1. row ***************************
EXPLAIN: {
  "query_block": {
    "select_id": 1,
    "table": {
      "table_name": "t1",
      "access_type": "ALL",
      "rows": 1000,
      "filtered": 100,
      "attached_condition": "(t1.col1 = 1)"
    }
  }
}

Вывод отличается от MySQL

Вывод MariaDB EXPLAIN FORMAT=JSON отличается от вывода EXPLAIN FORMAT=JSON в MySQL. Причины следующие:

  • Вывод MySQL имеет недостатки. Некоторые из них перечислены здесь: EXPLAIN FORMAT=JSON в MySQL
  • Вывод EXPLAIN FORMAT=JSON в MySQL не определён. Даже MySQL Workbench испытывает трудности с его разбором (см. эту статью блога).
  • MariaDB имеет оптимизации запросов, которых нет в MySQL. Следовательно, MariaDB генерирует планы запросов, которых нет в MySQL.

Неполный список отличий вывода MariaDB от MySQL можно найти здесь: Отличия EXPLAIN FORMAT=JSON от MySQL.

Формат вывода

TODO: Описание формата вывода MariaDB.

См. также

  • ANALYZE FORMAT=JSON генерирует вывод, похожий на EXPLAIN FORMAT=JSON, но дополненный данными из выполнения запроса.
Содержимое, воспроизведённое на этом сайте, является собственностью соответствующих владельцев, и это содержимое не предварительно проверяется MariaDB. Мнения, информация и мнения, выраженные в этом содержании, не обязательно отражают позицию MariaDB или любой другой стороны.

© 2023 MariaDB
Licensed under the Creative Commons Attribution 3.0 Unported License and the GNU Free Documentation License.
https://mariadb.com/kb/en/explain-format-json/

Spec-Zone.ru

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