Oracle
 sql >> Database >  >> RDS >> Oracle

Come utilizzare un array associativo Oracle in una query SQL

Creerei un tipo di database come questo:

create type v2t as table of varchar2(30);
/

E poi nella procedura:

FOR i IN 1..associativeArray.COUNT LOOP
    databaseArray.extend(1);
    databaseArray(i) := associativeArray(i);
END LOOP;

OPEN refCursor FOR
SELECT T.*
FROM   SOME_TABLE T,
       ( SELECT COLUMN_VALUE V
         FROM   TABLE( databaseArray )
       ) T2
WHERE  T.NAME = T2.V;

(dove databaseArray è dichiarato di tipo v2t.)