Oracle
 sql >> Base de données >  >> RDS >> Oracle

Comment utiliser un tableau associatif Oracle dans une requête SQL

Je créerais un type de base de données comme celui-ci :

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

Et puis dans la procédure :

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;

(où databaseArray est déclaré de type v2t.)