【发布时间】:2020-12-01 11:17:49
【问题描述】:
如何创建带参数的 (Oracle) 函数/过程以在块内返回由 select 语句返回的表
尝试使用 refcursor 获取数据如下,全部在一行中
{
image link for the sample output
附:我对 PL/SQL 很陌生
【问题讨论】:
标签: oracle function plsql procedure
如何创建带参数的 (Oracle) 函数/过程以在块内返回由 select 语句返回的表
尝试使用 refcursor 获取数据如下,全部在一行中
{
image link for the sample output
附:我对 PL/SQL 很陌生
【问题讨论】:
标签: oracle function plsql procedure
一种选择是返回 refcursor。这是一个例子:
SQL> create or replace function f_test (par_deptno in number)
2 return sys_refcursor
3 is
4 rc sys_refcursor;
5 begin
6 open rc for select * from emp where deptno = par_deptno;
7 return rc;
8 end;
9 /
Function created.
SQL> select f_test(10) from dual;
F_TEST(10)
--------------------
CURSOR STATEMENT : 1
CURSOR STATEMENT : 1
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
---------- ---------- --------- ---------- -------- ---------- ---------- ----------
7782 CLARK MANAGER 7839 09.06.81 2450 10
7839 KING PRESIDENT 17.11.81 10000 10
7934 MILLER CLERK 7782 23.01.82 1300 10
SQL>
【讨论】: