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;  

 

 相关推荐:

 

posted @ 2018-08-14 09:54  Marydon  阅读(9363)  评论(2编辑  收藏  举报