ОБЪЯСНЕНИЕ 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/