#php #oracle #pagination #pdo
#php #Oracle #разбивка на страницы #pdo
Вопрос:
Я использую PDO для сервера Oracle и извлекаю результаты запроса в класс коллекции, который можно повторять. Я делаю это, потому что многие результирующие наборы чрезвычайно велики и потребляли бы слишком много памяти, если бы я просто использовал fetchAll()
. Теперь я хочу реализовать разбивку на страницы, но я не уверен, как это сделать, не повторяя коллекцию до нужной записи и отбрасывая все перед ней. Это кажется очень неэффективным и в целом плохим дизайном. Есть ли какой-либо способ сделать то, что я хочу, без ненужного извлечения и удаления ненужных записей? Является ли ограничение запроса единственным способом?
Ответ №1:
Да, вы должны реализовать разбивку на страницы до этого, на этапе SQL-запроса. В противном случае нет ничего лучше, чем повторять и отбрасывать (что действительно ужасно).
Комментарии:
1. Это то, что я понял. Спасибо.