コレクションタイプを作成します:
CREATE TYPE stringlist IS TABLE OF VARCHAR2(100);
/
次に、それをプロシージャに渡して、MEMBER OF
を使用できます。 演算子(IN
ではなく 演算子):
CREATE PROCEDURE Test (
in_list IN stringlist,
out_results OUT SYS_REFCURSOR
)
IS
BEGIN
OPEN out_results FOR
SELECT *
FROM your_table
WHERE your_column MEMBER OF in_list;
END;
/
外部言語から接続している場合は、配列をプロシージャに簡単に渡すことができます(Javaの例)。または、PL/SQLまたは区切りリストからリストを作成できます。