Эффективное получение больших выборок MySQL с помощью фрагментации
Обработка больших наборов данных в MySQL часто может приводить к проблемам с памятью во время извлечения данных. Чтобы решить эту проблему, эффективное решение предлагает разбиение на части.
Техника разбиения на части
Разбиение на части предполагает разделение большого запроса на выборку на более мелкие подмножества. Поступая так, вы можете обрабатывать данные управляемыми порциями, предотвращая ограничения памяти.
Рассмотрите этот пример:
SELECT * FROM MyTable ORDER BY whatever LIMIT 0,1000;
Этот запрос извлекает первые 1000 строк из MyTable. Чтобы получить следующие 1000, вы должны увеличить смещение LIMIT:
SELECT * FROM MyTable ORDER BY whatever LIMIT 1000,1000;
Поддержание порядка строк
Чтобы обеспечить сохранение порядка строк, создайте временную таблицу как снимок исходной таблицы:
CREATE TEMPORARY TABLE MyChunkedResult AS ( SELECT * FROM MyTable ORDER BY whatever );
Эта временная таблица будет хранить упорядоченные данные, пока вы разбиваете результаты:
SELECT * FROM MyChunkedResult LIMIT 0, 1000;
Увеличьте смещение LIMIT для последующих фрагментов .
Соображения
Реализуя этот метод разбиения на части, вы можете эффективно извлекать большие результаты выбора MySQL по частям, избегая проблем с памятью и повышая производительность. .
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3