如何将超过 1000 个值放入 Oracle IN 子句中

How to put more than 1000 values into an Oracle IN clause(如何将超过 1000 个值放入 Oracle IN 子句中)

本文介绍了如何将超过 1000 个值放入 Oracle IN 子句中的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

有什么办法可以绕过 Oracle 10g 静态 IN 子句中 1000 个项目的限制?我有一个逗号分隔的列表,其中包含我想在 IN 子句中使用的许多 ID,有时此列表可能超过 1000 个项目,此时 Oracle 会抛出错误.查询与此类似...

Is there any way to get around the Oracle 10g limitation of 1000 items in a static IN clause? I have a comma delimited list of many of IDs that I want to use in an IN clause, Sometimes this list can exceed 1000 items, at which point Oracle throws an error. The query is similar to this...

select * from table1 where ID in (1,2,3,4,...,1001,1002,...)

推荐答案

把值放在一个临时表中然后做一个 select where id in (select id from temptable)

Put the values in a temporary table and then do a select where id in (select id from temptable)

这篇关于如何将超过 1000 个值放入 Oracle IN 子句中的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本文标题为:如何将超过 1000 个值放入 Oracle IN 子句中