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 回答