--首先创建一个类型
create or replace type t_test as object( empno number(4),ename varchar2(20),job varchar2(20),sal number(7,2) ) ; ---创建一个对象,引用上面的类型t_test create or replace type t_test_table as table of t_test ; --然后创建一个返回表的函数 create or replace function fn_test_collect(v_deptno number) return t_test_table is v_test t_test_table:=t_test_table(); begin select t_test(empno,empno,job,sal) bulk collect into v_test from emp where deptno=v_deptno; return v_test; end; --最后调用 select * from table(fn_test_collect('10'));