遇到了这个问题 "oracle 中 in 参数个数限制", 这里记录下,
in 后括号中的参数个数有限制, Oracle 9i 中个数不能超过 256,Oracle 10g 个数不能超过 1000.
当 in 的个数大于 1000 时, 解决办法有:
(1) 对参数进行处理, 分成多个 in, 其中每个 in 列表中参数都小于 1000, 如 in(1,2,3.........1000) or params in(1001,1002...2000).
不过这种方法性能和维护性方面不好
(2) 是将 in 后面的字符串改成了子查询, 将 in 里面的数据保存到临时表中, params in(select ....from dual )
来源: http://www.bubuko.com/infodetail-2594547.html