1

如何into根据以下 sql 查询在 Oracle 中的选择查询中设置多个。

declare
    v_a out varchar2;
    v_b out varchar2;
    v_c out varchar2;

    begin
        select a , b , c into v_a, v_b, v_c from table
    end
4

1 回答 1

2

如果您的表包含单个记录,那么您给出的内容是正确的,除了@AlexPoole 在他的评论中提到的内容。此外,您不能OUT在匿名块中使用。

如果您的表包含多条记录,那么您将需要创建一个集合来存储记录并BULK COLLECT在查询中执行。伪代码将类似于:

          Declare
               TYPE c_var is table of varchar2(100);
               v_a c_var ;
               v_b c_var ;
               v_c c_var ;

          Begin

                Select a, b, ,c BULK COLLECT INTO v_a, v_b, v_c from table;  
          END;

然后,您可以遍历集合以访问各个元素。

希望能帮助到你

维沙德

于 2014-01-29T11:55:55.663 回答