oraclewm_concat(oraclewmconcat函数不能用)

本篇文章给大家谈谈oraclewm_concat,以及oraclewmconcat函数不能用对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

oracle的wm_concat()函数

wm_concat(列名)这个神奇的函数,他可以把列值用“,”胡陵巧分隔开,而且是显汪脊示成一行,下面来看一下这个函数是如何用的。

表明:test

id  names  num

1     香蕉     3

2      苹果    2

3       葡萄   5

1        橘子   4

3         西瓜   6

想要实现的方式为:

id           names

1     香蕉(3斤),橘子(4斤)

2     苹果(2斤)

3     葡萄(5斤),西瓜(6斤)

使用oracle的wm_concat(column)裤键函数实现

select id,wm_concat(names || '(' || num ||'斤)')names from test  group by id;

oracle的wm_concat()函数的问题

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

没有问题的。

问题出在你的那个禅行李  distinct

oracle 12c 无法使用WM_CONCAT,求指导,以前用的11g可以使用!!!

建库时的个选项需要安装,如果没有安装就没有这个陪改漏函数,也可以不用安装,自己构建一个这样的函数,网上搜索一下,。

WM_CONCAT是oracle的非公开函数,并不鼓励使用,新版本oracle并没有带此函数,需要手工加上。

1、下载三个文件:owmctab.plb  、 owmaggrs.plb 、芦烂 owmaggrb.plb

2、用sqlplus登录:sqlplus -logon sys/123 as sysdba

3、执行@C:\Users\JOYTRAVEL\Desktop\WMSYS用户\owmaggrb.plb;

4、如果执行结果报错,歼丛说找不到WMSYS用户,那么执行 @C:\Users\JOYTRAVEL\Desktop\WMSYS用户\owmctab.plb;再执行owmaggrb和owmaggrs。

[img]

oracle如何使用wm_concat()?

select 顾客id,replace(wmsys.wm_concat(购买物芹空品),',','/') 购买物品,销售员,b.销售员姓名 from 表3 a LEFT JOIN 表2 b on a.销售员=b.销售手宏员编号 group by a.销售嫌薯瞎员,a.顾客id,b.销售员姓名

oracle使用wm_concat方法报错ora—01652

$ oerr ora 01652

01652, 00000, "unable to extend temp segment by %s in tablespace %s"

// *Cause: Failed to allocate an extent of the required number of blocks for

// a temporary segment in the tablespace indicated.

// *Action: Use ALTER TABLESPACE ADD DATAFILE statement to add one or more

// files to the tablespace indicated.

临时表空间满。

你薯桥宴这个表多大啊?会导数银致临消宽时表空间满。

在oracle9中如何实现wm_concat的功能

方法培高一,使用connect by +sys_connect_by_path :

--测试数据

create table test(col varchar2(10));

insert into test values('a');

insert into test values('b');

insert into test values('c');

--SQL语句:

select ltrim(sys_connect_by_path(col, ','), ',')

from (select col, row_number() over(order by rownum) rn from test t)

where connect_by_isleaf = 1

start with rn = 1

connect by rn = prior rn + 1;

方法二,使用xmltype:

select dbms_lob.substr(rtrim(xmlagg(xmlparse(content col || ',' wellformed))

.getclobval(),

'段中御,'),

4000,

1)

from test;

另握岩外在10,11版本中也不建议使用wm_concat,这个函数属于非公开函数,在12c版本中已经失效;

关于oraclewm_concat和oraclewmconcat函数不能用的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

标签列表