Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

PL / SQL - Sử dụng biến danh sách trong mệnh đề Where In

Sử dụng một bộ sưu tập:

CREATE TYPE Varchar2TableType AS TABLE OF VARCHAR2(200);

Hoặc sử dụng kiểu tích hợp sẵn như SYS.ODCIVARCHAR2LIST hoặc SYS.ODCINUMBERLIST :

VARIABLE cursor REFCURSOR;

DECLARE
  your_collection SYS.ODCIVARCHAR2LIST := SYS.ODCIVARCHAR2LIST();
BEGIN
  your_collection.EXTEND( 100 );

  your_collection(  1) := 'Some value';
  your_collection(  2) := 'Some other value';
  -- ...
  your_collection(100) := DBMS_RANDOM.STRING( 'x', 20 );

  OPEN :cursor FOR
  SELECT t.*
  FROM   your_table t
         INNER JOIN
         TABLE( your_collection ) c
         ON t.id = c.COLUMN_VALUE;
END;
/

PRINT cursor;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cách lấy ngày hiện tại trong Oracle

  2. Thêm ký hiệu tiền tệ £, $ vào các trường ORACLE nhất định

  3. Cách tạo chế độ xem trong oracle

  4. cách chọn danh sách 10.000 id duy nhất từ ​​kép trong SQL oracle

  5. Tạo tổng tích lũy trong chế độ xem oracle