泰仔在线

java学习,心情日记,缤纷时刻
posts - 100, comments - 34, trackbacks - 0, articles - 0

Oracle ref 游标

Posted on 2009-08-07 09:44 泰仔在线 阅读(220) 评论(0)  编辑  收藏 所属分类: Oracle 相关
CREATE OR REPLACE FUNCTION GetAreaCdStr(cmpyCd IN varchar2RETURN VARCHAR2 AS
  TYPE REFCURSOR 
IS REF CURSOR;
  AREA_COR  REFCURSOR;
  areaCdStr 
VARCHAR2(500);
  areaCd    
VARCHAR2(3);
BEGIN
  
OPEN AREA_COR FOR
    
SELECT DISTINCT AREA_CD FROM T_AREA_M WHERE CMPY_CD = cmpyCd ORDER BY AREA_CD;
  LOOP
    
FETCH AREA_COR INTO areaCd;
    
EXIT WHEN AREA_COR%NOTFOUND;
    
BEGIN
      areaCdStr :
= areaCdStr || areaCd || ',';
    
END;
  
END LOOP;
  
CLOSE AREA_COR;
  
RETURN areaCdStr;
END;

调用:
SELECT T.CMPY_CD, T.CMPY_NM, GETAREACDSTR(T.CMPY_CD) AS AREACDSTR
  
FROM T_CMPY_M T
 
ORDER BY T.CMPY_CD

只有注册用户登录后才能发表评论。


网站导航: