0

私はDB2データベースに取り組んでおり、TOADを使用して以下のステートメントを実行しています。STRINGARRAY は既に MYSCHEMA に Arraytype として作成されています。

BEGIN 
DECLARE CASE_ID_LIST MYSCHEMA.STRINGARRAY; 
SET CASE_ID_LIST = ARRAY['A001','A002','A003','A004']; 
SELECT T.ID,T.NUM FROM UNNEST(CASE_ID_LIST) AS T(ID,NUM); 
END

このステートメントは、「SQL0104N 予期しないトークン "UNNEST" が ..... の後に見つかりました」というエラーをスローしています。

私の実際の意図は、where 条件の IN 句で arraylist を渡すことです。UNNEST 関数の使用をテストするために、この select ステートメントを試しています。

私の最終的なクエリは次のようになります。

BEGIN 
DECLARE CASE_ID_LIST MYSCHEMA.STRINGARRAY; 
SET CASE_ID_LIST = ARRAY['A001','A002','A003','A004']; 
SELECT * FROM MYSCHEMA.TABLENAME WHERE CASE_ID IN (SELECT T.NUM FROM UNNEST(CASE_ID_LIST) AS T(NUM));
END

どうすればこの仕事を手に入れることができるかアドバイスしてください。前もって感謝します!!

4

0 に答える 0