8.4.2.4 Использование PROCEDURE ANALYSE
ANALYSE([ max_elements[,max_memory]])
PROCEDURE ANALYSE() устарело начиная с MySQL 5.7.18 и удалено в MySQL 8.0.
ANALYSE() анализирует результат запроса и возвращает анализ результатов, предлагающий оптимальные типы данных для каждого столбца, что может помочь уменьшить размер таблицы. Чтобы получить этот анализ, добавьте PROCEDURE
ANALYSE в конец оператора SELECT:
SELECT ... FROM ... WHERE ... PROCEDURE ANALYSE([max_elements,[max_memory]])
Например:
SELECT col1, col2 FROM table1 PROCEDURE ANALYSE(10, 2000);
Результаты показывают некоторые статистические данные для значений, возвращаемых запросом, и предлагают оптимальный тип данных для столбцов. Это может быть полезно для проверки ваших существующих таблиц или после импорта новых данных. Возможно, потребуется попробовать различные значения аргументов, чтобы PROCEDURE
ANALYSE() не предлагал тип данных ENUM, когда это не подходит.
Аргументы являются необязательными и используются следующим образом:
max_elements(по умолчанию 256) — максимальное количество различных значений, которыеANALYSE()замечает в каждом столбце. Это используетсяANALYSE()для проверки, должен ли оптимальный тип данных быть типаENUM; если есть более чемmax_elementsразличных значений, тоENUMне является рекомендуемым типом.max_memory(по умолчанию 8192) — максимальное количество памяти, котороеANALYSE()должно выделить на столбец при попытке найти все различные значения.
Оператор PROCEDURE не разрешен в операторе UNION.
© 2025 Oracle
Licensed under the GPLv2 License.