oracle字符串自身去重,oracle拼接字符串函数(去重和不去重)

论坛 期权论坛 编程之家     
选择匿名的用户   2021-5-17 00:07   11   0

oracle拼接字符串函数(去重和不去重)

1.不去重FUNCTION f_link

Function f_link

CREATE OR REPLACE FUNCTION f_link (p_str VARCHAR2)

RETURN VARCHAR2 PARALLEL_ENABLE AGGREGATE

USING t_link;

Type t_link

CREATE OR REPLACE TYPE T_LINK AS OBJECT

(

str VARCHAR2(30000),

--currentseprator varchar2(8),

STATIC FUNCTION odciaggregateinitialize(sctx IN OUT t_link) RETURN NUMBER,

MEMBER FUNCTION odciaggregateiterate(SELF IN OUT t_link,

VALUE IN VARCHAR2) RETURN NUMBER,

MEMBER FUNCTION odciaggregateterminate(SELF IN t_link,

returnvalue OUT VARCHAR2,

flags IN NUMBER)

RETURN NUMBER,

MEMBER FUNCTION odciaggregatemerge(SELF IN OUT t_link, ctx2 IN t_link)

RETURN NUMBER

)

CREATE OR REPLACE TYPE BODY T_LINK IS

STATIC FUNCTION odciaggregateinitialize(sctx IN OUT t_link) RETURN NUMBER IS

BEGIN

sctx := t_link(NULL);

RETURN odciconst.success;

END;

MEMBER FUNCTION odciaggregateiterate(SELF IN OUT t_link,

VALUE IN VARCHAR2) RETURN NUMBER IS BEGIN

SELF.str := SELF.str || ';' || VALUE;

RETURN odciconst.success;

END;

MEMBER FUNCTION odciaggregateterminate(SELF IN t_link,

returnvalue OUT VARCHAR2,

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP