oracle wm_concat(column)函数的使用

oracle wm_concat(column)函数使我们经常会使用到的,下面就教您如何使用oracle wm_concat(column)函数实现字段合并,如果您对oracle wm_concat(column)函数使用方面感兴趣的话,不妨一看。

shopping:

-----------------------------------------

u_id       goods            num

------------------------------------------

1                苹果                2

2                 梨子               5

1                 西瓜               4

3                 葡萄               1

3                香蕉                1

1               橘子                 3

=======================

想要的结果为:

--------------------------------

u_id          goods_sum

____________________

1              苹果,西瓜,橘子

2              梨子

3              葡萄,香蕉

---------------------------------

  1. select u_id, wmsys.wm_concat(goods) goods_sum
  2. from shopping
  3. group by u_id

想要的结果2:

--------------------------------

u_id          goods_sum

____________________

1              苹果(2斤),西瓜(4斤),橘子(3斤)

2              梨子(5斤)

3              葡萄(1斤),香蕉(1斤)

---------------------------------

使用oracle wm_concat(column)函数实现:

  1. select u_id, wmsys.wm_concat(goods || ‘(‘ || num || ‘斤)‘ ) goods_sum
  2. from shopping
  3. group by u_id

主要是根据 group by 后面的字段进行合并

时间: 2024-10-13 12:32:22

oracle wm_concat(column)函数的使用的相关文章

存储过程系列二:适用函数wm_concat(column)函数实现字段合并

1.学习wm_concat函数 oracle wm_concat(column)函数使我们经常会使用到的,下面就教您如何使用oraclewm_concat(column)函数实现字段合并 shopping: ----------------------------------------- u_id       goods            num ------------------------------------------ 1                苹果          

oracle wm_concat

oracle wm_concat(column)函数使我们经常会使用到的,下面就教您如何使用oraclewm_concat(column)函数实现字段合并 如: shopping: ----------------------------------------- u_id       goods            num ------------------------------------------ 1                苹果                2 2    

Oracle WMSYS.WM_CONCAT(COLUMN)

WMSYS.WM_CONCAT(COLUMN)实现字段合并. eg:SELECT TO_CHAR(WMSYS.WM_CONCAT(DISTINCT E)OVER(PARTITION BY A,B,C,D)) E FROM AA; 将BIN栏位按照A,B,C,D分组合并.合并之后的格式是以逗号分隔(比如:E1,E2,E3). 在最外面使用TO_CHAR()是因为如果不使用TO_CHAR(),那么返回的值是"<CLOB>". 返回<CLOB>,是因为E栏位的数据类型

Oracle经常使用函数

Oracle经常使用函数 --TRUNC,TO_DATE,TO_CHAR,TO_NUMBER, SUBSTR,REPLACE.NVL .TRIM,wm_concat,upper, lower,length,add_months(sysdate,1) 查看oracle版本号: SELECT * from v$version 一.trunc函数 1.TRUNC(for dates) TRUNC函数为指定元素而截去的日期值. 其详细的语法格式例如以下: TRUNC(date[,fmt]) 当中:dat

ORACLE SQL 组函数【weber出品必属精品】

组函数:对一组数据进行加工,每组数据返回一个值 常用的组函数:count()  avg()  max()   min()  sum()   count()函数  1. count(*) :返回总共的行数,不去除NULL值 2. count(column):返回非NULL行的数量 SQL> select count(*) ,count(sal),count(comm) from emp; COUNT(*) COUNT(SAL) COUNT(COMM) ---------- ---------- -

Oracle/Mysql/SqlServer函数区别

mysql日期和时间格式转换 Linux scp 使用详解 Oracle/Mysql/SqlServer函数区别 2011-07-01 12:34:36|  分类: Mysql技术 |  标签:mysql  sqlsever  oracle  函数   |举报 |字号大中小 订阅 Sql代码 1.类型转换 --Oracle select to_number('123') from dual; --123; select to_char(33) from dual;  --33; select t

Oracle DB 组函数

? 组函数: – 类型和语法 – 使用AVG.SUM.MIN.MAX.COUNT – 在组函数中使用DISTINCT关键字 – 组函数中的NULL值 何谓组函数 组函数会对行集进行计算,为每个组提供一个结果. 与单行函数不同,组函数用于对行集进行计算,从而为每个组提供一个结果.这些集合可以包含整个表,也可以包含表分割成的组. 组函数的类型 ? AVG ? COUNT ? MAX ? MIN ? STDDEV ? SUM ? VARIANCE 每个函数都接受一个参数.下表列出了在语法中可使用的选项

Oracle列转行函数版本不兼容解决方案

业务场景 本博客记录一下Oracle列转行函数在Oracle11的一些不兼容问题,vm_concat在一些业务场景是必须的.不过这个函数使用要谨慎,底层实现应该也是group by等等实现的,性能并不是特别好.这个函数在Oracle12是没有的,在Oracle11是不太兼容的,Oracle10可以正常使用.最近遇到这个问题,网上博客很多都写到了自定义列转行函数的办法去解决.但是这种办法并不一定适用所有的业务场景.我并没有采用.不过有些场景还是可以使用的. 网上优秀例子 下面是网络记录比较详细的例

Oracle的nvl函数和nvl2函数

一.基本语法 介绍一下oracle的nvl函数和nvl2函数. nvl函数 nvl函数基本语法为nvl(E1,E2),意思是E1为null就返回E2,不为null就返回E1. nvl2函数 nvl2函数的是nvl函数的拓展,基本语法为nvl2(E1,E2,E3),意思是E1为null,就返回E3,不为null就返回E2. 二.业务场景 nvl()函数比较常用的是这样的nvl(E1,0),意思是E1参数查询到为null的情况,就返回0,不为null就返回E1,常用于非空校验. nvl2()函数也讲