2014-09-07 6 views
0

Моя база данных состоит из таблицы, содержащей более 1000 тыс. Записей.Как я могу получить общее количество строк в TYPE_FORWARD_ONLY ResultSet?

Я не хочу загружать целые данные в память, поэтому я использую TYPE_FORWARD_ONLY ResultSet.

В настоящее время я сохраняю счетчик и повторяю весь ResultSet и увеличиваю счетчик, чтобы получить общее количество строк.

Итерировать весь ResultSet занимает много времени. Я не хочу добавлять другой счетчик, поскольку мои запросы сложны и требуют много времени для выполнения.

Есть ли эффективный способ получить общее количество строк?

+0

Можете ли вы использовать 'SQL_CALC_FOUND_ROWS'? –

ответ

0

Используйте запрос SQL SELECT COUNT(*) FROM .... Вы сказали, что не хотите использовать его, но это почти наверняка будет более эффективным, чем перемещение целого набора результатов, состоящего из целой таблицы.

Смежные вопросы