• orcale 函数wm_concat不存咋lob值使用zh_concat 替换


    1. create or replace TYPE zh_concat_im   
    2. AUTHID CURRENT_USER AS OBJECT  
    3. (  
    4.   CURR_STR VARCHAR2(32767),  
    5.   STATIC FUNCTION ODCIAGGREGATEINITIALIZE(SCTX IN OUT zh_concat_im) RETURN NUMBER,  
    6.   MEMBER FUNCTION ODCIAGGREGATEITERATE(SELF IN OUT zh_concat_im,   
    7.                P1 IN VARCHAR2) RETURN NUMBER,  
    8.   MEMBER FUNCTION ODCIAGGREGATETERMINATE(SELF IN zh_concat_im,  
    9.                                  RETURNVALUE OUT VARCHAR2,  
    10.                                  FLAGS IN NUMBER)  
    11.                      RETURN NUMBER,  
    12.   MEMBER FUNCTION ODCIAGGREGATEMERGE(SELF IN OUT zh_concat_im,   
    13.                     SCTX2 IN  zh_concat_im) RETURN NUMBER  
    14. );  
    15. /  
    16.   
    17. create or replace TYPE BODY zh_concat_im  
    18. IS  
    19.   STATIC FUNCTION ODCIAGGREGATEINITIALIZE(SCTX IN OUT zh_concat_im)  
    20.   RETURN NUMBER   
    21.   IS  
    22.   BEGIN  
    23.     SCTX := zh_concat_im(NULL) ;  
    24.     RETURN ODCICONST.SUCCESS;  
    25.   END;  
    26.   MEMBER FUNCTION ODCIAGGREGATEITERATE(SELF IN OUT zh_concat_im,  
    27.           P1 IN VARCHAR2)   
    28.   RETURN NUMBER   
    29.   IS  
    30.   BEGIN  
    31.     IF(CURR_STR IS NOT NULL) THEN   
    32.       CURR_STR := CURR_STR || <span style="color:#ff0000;">','</span> || P1;  
    33.     ELSE  
    34.       CURR_STR := P1;  
    35.     END IF;  
    36.     RETURN ODCICONST.SUCCESS;  
    37.   END;  
    38.   MEMBER FUNCTION ODCIAGGREGATETERMINATE(SELF IN zh_concat_im,  
    39.                                  RETURNVALUE OUT VARCHAR2,  
    40.                                  FLAGS IN NUMBER)  
    41.     RETURN NUMBER   
    42.   IS  
    43.   BEGIN  
    44.     RETURNVALUE := CURR_STR ;  
    45.     RETURN ODCICONST.SUCCESS;  
    46.   END;  
    47.   MEMBER FUNCTION ODCIAGGREGATEMERGE(SELF IN OUT zh_concat_im,   
    48.                                    SCTX2 IN zh_concat_im)   
    49.   RETURN NUMBER   
    50.   IS  
    51.   BEGIN  
    52.     IF(SCTX2.CURR_STR IS NOT NULL) THEN   
    53.       SELF.CURR_STR := SELF.CURR_STR || <span style="color:#ff0000;">','</span> || SCTX2.CURR_STR ;  
    54.     END IF;  
    55.     RETURN ODCICONST.SUCCESS;  
    56.   END;  
    57. END;  
    58. /  
    59. create or replace FUNCTION zh_concat(P1 VARCHAR2)   
    60. RETURN VARCHAR2 AGGREGATE USING zh_concat_im ;  
  • 相关阅读:
    安装SQL sever2008时显示重新启动计算机规则失败,应该怎么解决?
    C#获取当前日期时间(转)
    使用JQUERY实现页面局部刷新
    Metal渲染:实现画面比例功能
    Metal渲染:实现旋转/翻转功能
    依赖注入浅析
    iOS 消息推送实现 APNS
    使用#pragma阻止一些warnings
    github 多帐户使用
    Swift 实现Bitmask Option(Enum)
  • 原文地址:https://www.cnblogs.com/itniwota/p/6481353.html
Copyright © 2020-2023  润新知