gpt4 book ai didi

oracle - 如何循环遍历 Oracle PLSQL 中的分隔列表

转载 作者:行者123 更新时间:2023-12-01 06:56:31 26 4
gpt4 key购买 nike

我正在研究在其中调用另一个过程的 Oracle 过程。我的参数之一 (parm1)可以在逗号分隔列表中包含一个或多个值。如何遍历这些值以将它们一次传递给另一个过程?

这是我希望它做的一个例子:

When Parm1 = 123,312

callProcedure2(123)
callProcedure2(321)

-或者-
When Parm1 123

callProcedure2(123)

我认为这可以使用循环来完成,但我无法弄清楚如何让它将每个值用作循环内的单独调用。

任何帮助,将不胜感激!

谢谢!

最佳答案

CURSOR V_CUR IS
select regexp_substr(Parm1 ,'[^,]+', 1, level) As str from dual
connect by regexp_substr(Parm1, '[^,]+', 1, level) is not null;

这个 curor 会给你这样的结果
123
321

现在迭代游标并在循环中调用该过程。
For i IN V_CUR
LOOP
callProdcedure2(i.str);
END LOOP;

关于oracle - 如何循环遍历 Oracle PLSQL 中的分隔列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19168819/

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