Ограничение итерации iBATIS по списку/массиву на основе числового условия

Я использую iBatis для перебора списка элементов в операторе выбора следующим образом:

<iterate property="someCollection" open="(" close=")" conjunction=",">
#someCollection[]#
</iterate>

При этом я столкнулся с ошибкой: «java.sql.SQLException: ORA-01795: максимальное количество выражений в списке — 1000»

Теперь мой список, очевидно, содержит более 1000 элементов (17000, если быть точным), поэтому мне было интересно, есть ли способ разделить эту итерацию на 1000 итераций за раз, и если да, то какое условие мне нужно добавить?

Если я не думаю в правильном направлении этого предлагаемого решения, может ли кто-нибудь предложить лучшее?

Большое спасибо


person Hakan Ozbay    schedule 22.12.2010    source источник


Ответы (1)


Я бы поместил ваши 17000 элементов в таблицу и использовал подзапрос.

person Nathan Hughes    schedule 22.12.2010