spring-jdbc for IN查询有超过1000个id

时间:2011-10-08 07:37:26

标签: java sql spring-jdbc

我有这样的查询 -

SELECT * FROM mytable WHERE id IN()

IN将获得超过1000的ID列表。所以我的查询在Oracle上失败了。

一个选项是我在临时表中插入id并更改上面的查询以加入这个新表。

spring-jdbc是否提供了解决此问题的方法?我可以用什么模式来写我的DAO?

2 个答案:

答案 0 :(得分:0)

我只需要以1000块为单位对ID列表进行分区,并为每个块执行相同的查询。这可以很容易地封装在可重用的实用方法中。

答案 1 :(得分:0)

首先来自哪里?如果可以从现有表中检索它们,那么使用包含id的表的子选择构建sql会很容易吗?