当前位置: 代码迷 >> Oracle开发 >> oracle 中 in的使用,该如何解决
  详细解决方案

oracle 中 in的使用,该如何解决

热度:49   发布时间:2016-04-24 07:41:14.0
oracle 中 in的使用
在做项目过程中查询语句中需要用到 in(很多参数) 当参数多余1000时就会出现参数列数不能大于1000的错误
请问,除了将参数分割,还有什么好多办法,请指教

------解决方案--------------------
select * from tablename t where t.id in select id from .....
------解决方案--------------------
将你需要的参数先存入到一个临时表中,然后再用1楼的sql就行
------解决方案--------------------
二楼说法是正确的,我以前也遇见过此类问题。
------解决方案--------------------
使用exists吧 这样执行起来效率高。
select * from tablename a where exists(select null from tablename1 b where b.id = a.id)
------解决方案--------------------
二楼方法很正确,呵呵,无需多说了。
------解决方案--------------------
引用楼主 xiaolong_yuhan 的帖子:
在做项目过程中查询语句中需要用到 in(很多参数) 当参数多余1000时就会出现参数列数不能大于1000的错误
请问,除了将参数分割,还有什么好多办法,请指教

------解决方案--------------------
二楼正解
  相关解决方案