В моей программе Spring Batch я выполняю запрос SQL , извлекаю некоторую информацию из возвращенного набора результатов и затем распечатываю ее в файл.
Возвращено слишком много строк, поэтому запрос имеет плохую производительность.
SELECT *
FROM CIF
WHERE status > 1
Этот пример запроса возвращает 500 000 строк.
Я пытался выбрать 5000 верхних строк одновременно:
SELECT TOP 5000
FROM CIF
WHERE status > 1
Проблема здесь в том, что если я зациклюсь на этом, я получу те же 5000 строк каждый раз. Я не могу придумать, как сделать цикл и получить 5000 строк, распечатать необходимую мне информацию в файл и получить следующие 5000 строк. Есть идеи?