是否存在超过1000个值的IN子句的替代解决方案

时间:2013-06-19 06:21:27

标签: oracle

我想在IN子句中使用超过1000的值,该子句不支持。例如。

从prodId IN(1,2,3 .....,1020);

的产品中选择prodCode

有人可以建议我使用其他替代解决方案吗?

1 个答案:

答案 0 :(得分:1)

您在IN条款中放入的prodId的值来自哪里?

如果它们来自另一个查询,那么您应该组合这两个查询。

如果它们来自某个复杂的进程或外部数据源,那么您应该将它们存储在临时表中。临时表只能包含prodId列。加入该表而不是使用IN列表。