首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > oracle >

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

2012-01-12 
oracle 中 in的使用在做项目过程中查询语句中需要用到in(很多参数) 当参数多余1000时就会出现参数列数不能

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的错误
请问,除了将参数分割,还有什么好多办法,请指教

[解决办法]
二楼正解

热点排行