Oracle
 sql >> база данни >  >> RDS >> Oracle

Предава стойност, съхранена в PL/SQL променлива, в клауза IN

Друг начин е да се използват вложени таблици във връзка с оператора TABLE

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;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Защо индексът NLSSORT не се използва за тази заявка?

  2. JOINs с условие в HQL заявка?

  3. Юли 2016 PSU не успява да направи isqora

  4. Oracle Sequence не генерира непрекъснато число

  5. TO_CHAR от тип TABLE на Oracle PL/SQL