【发布时间】:2012-12-07 15:15:23
【问题描述】:
我在 BIP 中使用以下查询,它会引发 'Invalid Number' 错误。相同的查询在 Toad 中运行良好。有人能告诉我为什么我得到 ORA-01722: invalid number 。当只使用 1 个参数时,它工作正常,只有当我们选择超过 1 个选项时,我们得到这个错误。
我们使用 String 数据类型 作为参数 ref_std
这里是每个值包含哪些值的要点
multilist01 - 包含 csv 值,例如 ',100,200,300,400,'
:ref_std - 将是一个参数(多选),如 EN 60439-1:1999,EN 60439-3:1991
select * from
(
select cert.multilist01
from
some_table
) xx
join
(
select id as input from some_table where item_number in
(
select regexp_substr(:ref_std,'[^,]+', 1, level) ID
from dual
connect by regexp_substr(:ref_std,'[^,]+', 1, level) is not null
)
)yy on xx.multilist01 like '%'||yy.input||'%'
【问题讨论】:
-
我会首先仔细测试 yy 查询,看看你是否有带有逗号的值