gpt4 book ai didi

sql - 对于每个字符串,执行一个函数/过程

转载 作者:行者123 更新时间:2023-12-04 02:44:39 25 4
gpt4 key购买 nike

我想遍历一个字符串列表并以每个字符串作为参数执行一个函数/过程。

以下通用代码的最佳替代方法是什么(因为它不合法):

set serveroutput on;  
begin
FOR r IN ('The', 'Quick', 'brown', 'fox')
LOOP
dbms_output.put_line( r );
END LOOP;
end;

我认为这可能有模式。

最佳答案

只是为了完整性,一个纯 PL/SQL 解决方案。

SQL> set serveroutput on
SQL>
SQL> declare
2 my_array sys.dbms_debug_vc2coll
3 := sys.dbms_debug_vc2coll('The', 'Quick', 'brown', 'fox');
4 begin
5 for r in my_array.first..my_array.last
6 loop
7 dbms_output.put_line( my_array(r) );
8 end loop;
9 end;
10 /
The
Quick
brown
fox

PL/SQL procedure successfully completed.

SQL>

这使用预先声明的 sys.dbms_debug_vc2coll数据类型,它有一个相当大的定义......
SQL> desc sys.dbms_debug_vc2coll
sys.dbms_debug_vc2coll TABLE OF VARCHAR2(1000)

SQL>

...所以,就像加里说的,你可能希望声明你自己的。特别是如果您的字符串很短并且您有很多字符串。

关于sql - 对于每个字符串,执行一个函数/过程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2242024/

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