oracle 存储过程 返回结果集

时间:2023-03-09 01:21:49
oracle 存储过程 返回结果集

oracle 存储过程 返回结果集

CreationTime--2018年8月14日09点50分

Author:Marydon

1.情景展示

  oracle存储过程如何返回结果集

2.解决方案

  最简单的方式:返回oracle的系统游标

CREATE OR REPLACE PROCEDURE CARD_COUNT_YLJG(V_START_DATE  IN VARCHAR2, --开始时间
V_END_DATE IN VARCHAR2, --结束时间
V_PARENTORGID IN VARCHAR2, --父医疗机构ID
OUT_CURSOR OUT SYS_REFCURSOR) AS --系统游标
/**
* 内容:电子卡刷卡量统计(按医疗机构)
* 日期:2018/08/13
* 作者:MARYDON
* 版本:1.0
*/
BEGIN
OPEN OUT_CURSOR FOR
SELECT T4.ORGNAME, COUNT(T4.ORGID) TOTAL
FROM VIRTUAL_CARDLOG T, READ_TERM T2, ORG_ACCESS T3, BASE_ORG_INFO T4
WHERE T.LOGTIME >= TO_DATE(V_START_DATE, 'YYYY-MM-DD')
AND T.LOGTIME < (TO_DATE(V_END_DATE, 'YYYY-MM-DD') + 1)
AND T.TERMCODE = T2.TERMCODE
AND T2.ORGCODE = T3.ORGCODE
AND T3.ORGCODE = T4.ORGCODE
AND T4.ORGTYPE = 3 --医疗机构
AND T4.PARENTORGID = V_PARENTORGID
GROUP BY T4.ORGID, T4.ORGNAME;
END CARD_COUNT_YLJG;  

相关推荐: