spring-jdbc для запроса IN, имеющего более 1000 идентификаторов - PullRequest
0 голосов
/ 08 октября 2011

У меня такой запрос -

SELECT * FROM mytable WHERE id IN()

IN получит список идентификаторов, которые больше 1000.Таким образом, мой запрос не выполняется в Oracle.

Один из вариантов заключается в том, что я вставляю идентификаторы во временную таблицу и изменяю приведенный выше запрос для объединения с этой новой таблицей.

Предоставляет ли spring-jdbc что-либо длярешить это?Могу ли я следовать какой-либо схеме, чтобы написать свой DAO?

Ответы [ 2 ]

0 голосов
/ 08 ноября 2012

Откуда в первую очередь идентификаторы? Если их можно извлечь из существующих таблиц, тогда будет легко создать свой sql с подвыбором для таблиц, содержащих идентификаторы?

0 голосов
/ 08 октября 2011

Я бы просто разделил список идентификаторов на 1000 блоков и выполнил бы тот же запрос для каждого блока. Это может быть легко инкапсулировано в методе многократного использования.

...