Oracle
 sql >> Datenbank >  >> RDS >> Oracle

Übergeben Sie den in einer PL/SQL-Variablen gespeicherten Wert an eine IN-Klausel

Eine andere Möglichkeit besteht darin, verschachtelte Tabellen in Verbindung mit dem TABLE-Operator

zu verwenden
create type nt_vr_arr_list is table of number;

DECLARE
  vr_arr_list  nt_vr_arr_list := nt_vr_arr_list(100, 200, 330);
BEGIN
  FOR cx IN (SELECT id, name
               FROM tbl_demo
              WHERE id IN (SELECT COLUMN_VALUE FROM TABLE(vr_arr_list))) LOOP
    DBMS_OUTPUT.put_line('ID: ' || cx.id || ' Name: ' || cx.name);
  END LOOP;
END;