sql >> データベース >  >> RDS >> Oracle

PL/SQL関数で配列を渡す使用方法

    コレクションタイプを作成し、そのタイプのインスタンスとしてパラメータを渡すことができます。

    SQL> create type num_array as table of number;
      2  /
    
    Type created.
    
    SQL> create or replace function myfun ( arr_in num_array ) return varchar2 is
      2      txt varchar2(1000);
      3  begin
      4      for i in 1..arr_in.count loop
      5          txt := txt || to_char( arr_in(i) ) || ',';
      6      end loop;
      7      return txt;
      8  end;
      9  /
    
    Function created.
    
    SQL> declare
      2    myarray num_array;
      3    mytext  varchar2(1000);
      4  begin
      5    myarray := num_array();
      6    myarray.extend(3);
      7    myarray(1) := 1;
      8    myarray(2) := 5;
      9    myarray(3) := 9;
     10    dbms_output.put_line( myfun( myarray ));
     11  end;
     12  /
    
    1,5,9,
    
    PL/SQL procedure successfully completed.
    



    1. SQL Plusから実行されているSQLスクリプトでアンパサンドを無視するにはどうすればよいですか?

    2. PostgreSQLユーザーグループNL

    3. Django PostgreSQLデータベースをリセットする簡単な方法は?

    4. クラウド内のMySQL-AmazonRDSから独自のサーバーへのオンライン移行:パート2