0

ユーザー定義のテーブルタイプがあるとしましょう。

create or replace type SrcCodeTbl is table of varchar(20);

このタイプのパラメータを持つプロシージャがあります。

create or replace procedure Blah.MyProc( srcCodesIN in SrcCodeTbl )

srcCodesInプロシージャ内の別のテーブルでselect/joinステートメントで使用できますか?それを機能させようとしていて、コンパイラは次のように報告し続けます。

select distinct someVal into outVal 
from OtherTable ot, srcCodesIn sc 
where ot.ID = sc.column_val;

Error(28,22): PL/SQL: ORA-00942: table or view does not exist

構文が単純なものだと確信していますが、理解できていません。私はforループで動作するものを手に入れましたが、それを行う別の方法があるかどうか興味があります。ありがとう。

4

1 に答える 1

2

どうですか

SELECT DISTINCT someVal 
INTO outVal 
FROM OtherTable ot, TABLE(srcCodesIn) sc 
WHERE ot.ID = sc.column_value
于 2011-10-28T11:58:16.713 に答える