【发布时间】:2009-12-07 18:03:32
【问题描述】:
我想在 Oracle 10g 中执行以下操作(这是一个人为的示例来展示概念,而不是真实的代码)
create table orders (order_id NUMBER);
insert into table orders values (1);
insert into table orders values (2);
insert into table orders values (3);
TYPE NUMBER_ARRAY_T is TABLE of NUMBER;
PROCEDURE VALIDATE_ORDER_IDS(i_orders IN NUMBER_ARRAY_T, o_output OUT SYS_REFCURSOR)
IS
BEGIN
OPEN o_output FOR
select ??? from TABLE(i_orders) where ??? NOT IN (select order_id from orders);
END VALIDATE_ORDER_IDS;
将使用包含 (1,2) 的数组调用存储过程,我们希望得到 3 作为结果
所以,问题是,无论如何要指定一个列名,其中 ???是在使用嵌套表作为表时,所以上面的选择语句会起作用吗?
【问题讨论】: