fyqt.net
当前位置:首页 >> orAClE 11g wm ConCAt >>

orAClE 11g wm ConCAt

建库时的个选项需要安装,如果没有安装就没有这个函数,也可以不用安装,自己构建一个这样的函数,网上搜索一下 http://zjm16.iteye.com/blog/899941 这个可以用,我试过

所有版本的oracle都可以使用select wm_concat(name) as name from user; 但如果是oracle11g,使用select listagg(name, ',') within group( order by name) as name from user; 效率更高,官方也更推荐这种写法。

方法一,使用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(...

select str from ( select wm_concat(t.id) over( order by t.id) str,row_number() over( order by t.id desc) rn from student t) a where a.rn=1

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 ...

string_agg(text,text), 第一个参数是合并的字段,第二个参数是连接符。是聚合函数。 select aaa,string_agg(bbb,',') from test group by aaa

sys.wm_concat是oracle10g才有的函数,之前就没有。 而且这个一直是用逗号做分隔符的, 你说的情况,可能是: 用wm_concat后再用replace进行替换了,将 逗号 替换成 冒号了, 这也是一般的方法。 自己改写了wm_concat的函数,网上有这个函数的原...

可以这样处理: SELECT 'man' || 'jia' || 'hua' FROM DUAL; 或者多写几个 concat 函数。

那可以不用concat,可以采用||的方式。 比如有A列和B列,要在A列和B列连接的同时在中间加一个空格,可用如下语句: select A||' '||B from 表名concat在oracle中只可以连接两个字符,如果非要用concat的话,可以采用这种方式: select concat(co...

语法没问题,我的测试数据显示也是正常的;所以。。。检查一下数据吧。 SQL> select a.itemid,b.itemname,wmsys.wm_concat(a.typename) 2 from a,b 3 where a.itemid=b.itemid 4 group by a.itemid,b.itemname 5 / ITEMID ITEMNAME WMSYS.WM_CON...

网站首页 | 网站地图
All rights reserved Powered by www.fyqt.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com