【发布时间】:2014-03-28 15:47:05
【问题描述】:
在我的程序中,有很多情况我需要获取有关知道 id 的其他信息。所以我有一个 id 列表,它的长度可能很长(例如 100000 个元素)。
如何在不使用临时表的情况下使用此列表并在 oracle 中传输以获取 sql?
不,我尝试使用集合:
CREATE TYPE TEST_VARRAY IS VARRAY(5000) OF NUMBER(18);
SELECT G.ID, G.NAME FROM ANY_TABLE G
WHERE G.ID IN
(
SELECT COLUMN_VALUE FROM TABLE(
NEW TEST_VARRAY
(0,1,2,3... and so on ...,995,996,997,998,999)
)
);
有 1000 个数字。当我尝试执行此查询时,出现错误ORA-00907: missing right parenthesis 提示!但是如果我删除第一个 0(所以我们有 999 个数字),则 sql 执行正常。
这里有什么问题?
【问题讨论】:
标签: oracle