gpt4 book ai didi

oracle - ORA-00907 : missing right parenthesis when create varray

转载 作者:行者123 更新时间:2023-12-02 09:32:47 27 4
gpt4 key购买 nike

在我的程序中,有很多情况我需要获取有关了解 ids 的附加信息。所以我有 ids 列表,其长度可能很长(例如其中有 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:缺少右括号提示!但是如果我删除前 0 个(所以我们有 999 个数字),则 sql 执行正常。

这里有什么问题吗?

最佳答案

Oracle IN 子句有限制。

A comma-delimited list of expressions can contain no more than 1000 expressions. A comma-delimited list of sets of expressions can contain any number of sets, but each set can contain no more than 1000 expressions.

阅读hereherehere

关于oracle - ORA-00907 : missing right parenthesis when create varray,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19024717/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com