亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

請教下在oracle會出現什么不可控因素嗎 ?如果會,是什么樣的?

請教下在oracle會出現什么不可控因素嗎 ?如果會,是什么樣的?

慕桂英3389331 2022-12-17 17:13:16
create or replace TYPE BODY en_concat_im ISSTATIC FUNCTION ODCIAGGREGATEINITIALIZE(SCTX IN OUT en_concat_im)RETURN NUMBER ISBEGINSCTX := en_concat_im(NULL);RETURN ODCICONST.SUCCESS;END;MEMBER FUNCTION ODCIAGGREGATEITERATE(SELF IN OUT en_concat_im,P1 IN VARCHAR2) RETURN NUMBER ISBEGINIF (CURR_STR IS NOT NULL) THENCURR_STR := CURR_STR || ';' || P1;ELSECURR_STR := P1;END IF;RETURN ODCICONST.SUCCESS;END;MEMBER FUNCTION ODCIAGGREGATETERMINATE(SELF IN en_concat_im,RETURNVALUE OUT VARCHAR2,FLAGS IN NUMBER)RETURN NUMBER ISBEGINRETURNVALUE := CURR_STR;RETURN ODCICONST.SUCCESS;END;MEMBER FUNCTION ODCIAGGREGATEMERGE(SELF IN OUT en_concat_im,SCTX2 IN en_concat_im) RETURN NUMBER ISBEGINIF (SCTX2.CURR_STR IS NOT NULL) THENSELF.CURR_STR := SELF.CURR_STR || ';' || SCTX2.CURR_STR;END IF;RETURN ODCICONST.SUCCESS;END;END;create or replace FUNCTION en_concat(P1 VARCHAR2) RETURN VARCHAR2 AGGREGATE USING en_concat_im ;create or replace TYPE en_concat_im AUTHID CURRENT_USER AS OBJECT(CURR_STR VARCHAR2(32767),STATIC FUNCTION ODCIAGGREGATEINITIALIZE(SCTX IN OUT en_concat_im)RETURN NUMBER,MEMBER FUNCTION ODCIAGGREGATEITERATE(SELF IN OUT en_concat_im,P1 IN VARCHAR2) RETURN NUMBER,
查看完整描述

1 回答

?
阿晨1998

TA貢獻2037條經驗 獲得超6個贊

insert into test values('aaa','1');
insert into test values('bbb','2');
insert into test values('ccc','5');
insert into test values('ddd','3');
select wm_concat(a),wm_concat(b) from test;

WM_CONCAT(A) WM_CONCAT(B)
1 aaa,bbb,ccc,ddd 1,2,5,3

沒有問題的。

drop table test;
create table test(a varchar2(30),b varchar2(30),c varchar2(30));
insert into test values('aaa','1','a');
insert into test values('bbb','2','a');
insert into test values('ccc','5','a');
insert into test values('ddd','3','a');
insert into test values('aaaaa','11','b');
insert into test values('bbbbb','22','b');
insert into test values('ccccc','55','b');
insert into test values('ddddd','33','b');
select c,max(a),max(b) from (
select c,wm_concat(a) over (partition by c order by a) a,
wm_concat(b) over (partition by c order by a) b from test
) tt
group by c ; 
C MAX(A) MAX(B)

a aaa,bbb,ccc,ddd 1,2,5,3

b aaaaa,bbbbb,ccccc,ddddd 11,22,55,33


查看完整回答
反對 回復 2022-12-21
  • 1 回答
  • 0 關注
  • 109 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號