`
康敏栋
  • 浏览: 171399 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

oracle wm_concat(column)函数的使用

 
阅读更多
转载地址:http://database.51cto.com/art/201010/231126.htm

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              葡萄,香蕉

---------------------------------
select u_id, wmsys.wm_concat(goods) goods_sum  
 
from shopping  
 
group by u_id  


想要的结果2:

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

u_id          goods_sum

____________________

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

2              梨子(5斤)

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

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

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

select u_id, wmsys.wm_concat(goods || '(' || num || '斤)' ) goods_sum  
 
from shopping  
 
group by u_id  
分享到:
评论

相关推荐

    解决Oracle没有WM_CONCAT函数.zip

    标题“解决Oracle没有WM_CONCAT函数”暗示了这个问题的背景:用户在尝试使用WM_CONCAT时遇到了问题,或者想要在不支持此函数的数据库环境中实现类似的功能。这可能是因为他们正在处理需要聚合多个字符串字段的查询,...

    ORA-00904: "WM_CONCAT": 标识符无效

    在这个场景下,错误信息提到的是"WM_CONCAT"函数,这表明在Oracle 19c数据库环境中,用户尝试使用WM_CONCAT函数,但系统无法识别该函数,提示其为无效的标识符。WM_CONCAT是Oracle 10g及更早版本中用于字符串合并的...

    ORA-00904 WMSYS.WM_CONCAT标识符无效解决方案

    2. **自定义函数**:如果不能使用LISTAGG(例如,在Oracle 10g或更低版本中),可以创建自己的自定义聚合函数来替代WM_CONCAT。 3. **调整查询**:在某些情况下,可能可以通过重新构造查询,使用嵌套的SELECT语句或...

    Oracle重建WMSYS用户及WMSYS.WM_CONCAT函数(更低分)

    这个错误通常意味着试图访问或使用`WMSYS.WM_CONCAT`函数时遇到了问题,这是一个在早期Oracle版本中提供的聚合函数,用于字符串连接,但在较新的版本中被弃用并替换为其他更安全和高效的解决方案。 `WMSYS`是Oracle...

    oracle行转列聚合函数WMSYS.WM_CONCAT

    3. **兼容性**:需要注意的是,`WMSYS.WM_CONCAT`函数并非Oracle标准函数,它是在Oracle 10g之后引入的,因此在使用时需确保Oracle版本支持。 #### 五、总结 通过本文的学习,我们了解了Oracle中的`WMSYS.WM_...

    自写函数用于替换wm_concat函数.zip

    在Oracle数据库中,`WM_CONCAT`函数是一个非常实用的工具,它允许我们将多个行的数据合并成一个字符串,但是这个函数在Oracle 11g R2版本之后被标记为弃用,不再推荐使用。为了应对这个问题,开发者们经常需要自定义...

    BLOG_Oracle_wm_concat包的订制.pdf

    1. **利用系统包创建WM_CONCAT函数**:Oracle提供了一套脚本来创建一个类似`WM_CONCAT`的函数,这通常涉及到在`WMSYS`模式下执行一系列的PL/SQL语句,以复现`WM_CONCAT`的功能。这个过程需要对Oracle的内部工作原理...

    wmsys.wm_concat详细示例.txt

    在Oracle数据库中,`wmsys.wm_concat`是一个非常实用且强大的函数,主要用于将多个字符串连接成一个字符串。此函数常用于数据聚合场景,尤其是当需要在一个查询中汇总特定分组下的所有值时。根据给定文件的信息,...

    oracle wm_concat 列转行 逗号分隔

    然而,需要注意的是,WM_CONCAT并不是Oracle官方提供的标准函数,它在Oracle 11g R2版本之后就被标记为不推荐使用,因为它的性能和可扩展性有限。尽管如此,在早期版本中,WM_CONCAT仍然被广泛使用。 WM_CONCAT函数...

    oracle合并列的函数wm_concat的使用详解

    在Oracle数据库中,有时我们需要将同一列中的多个值合并成一个字符串,这时就可以使用`WM_CONCAT`函数。`WM_CONCAT`是一个非标准的Oracle函数,它在Oracle 9i及以后的版本中被广泛使用,但在Oracle 11g R2版本中由于...

    oracle查询表的所有列并用逗号隔开

    2. **使用 WM_CONCAT 函数**:接着,我们将使用`WM_CONCAT`函数来连接查询结果中的列名,并在每个列名之间插入逗号作为分隔符。 3. **GROUP BY 子句**:最后,为了确保所有列名都正确地被聚合到一起,我们需要使用`...

    owmctab.plb、owmaggrs.plb、owmaggrb.plb

    1. **使用其他内置函数**:Oracle推荐使用"LISTAGG"函数来代替"WM_CONCAT","LISTAGG"可以按分组聚合数据并返回一个字符串。例如: ```sql SELECT LISTAGG(column_name, ', ') WITHIN GROUP (ORDER BY column_name...

    管理信息化ORACLEOracle100个常用函数.pdf

    SELECT REPLACE(WM_CONCAT(column), ',', '+') FROM table; ``` 5. CAST:类型转换函数,允许将数据从一种Oracle数据类型转换为另一种。 ```sql SELECT CAST(a AS INT) FROM t1; SELECT CAST(a AS NUMBER(8, 4...

    Oracle关键字用法整合

    **功能说明**:`WM_CONCAT`函数与`LISTAGG`类似,用于将多个字符串值连接成一个单独的字符串。 **语法结构**: ```sql SELECT id, WM_CONCAT(name) name FROM test_table GROUP BY id; ``` **示例**: ```sql ...

    oracle列合并的实现方法

    在Oracle 10G及更早版本中,我们可以使用`WMSYS.WM_CONCAT`函数来合并列的值。这个函数会将字段的值用逗号(,)分隔开来。例如,如果我们有一个名为`tab_name`的表,并且想要合并`name`列,我们可以使用以下查询: ...

    Oracle100个常用函数.docx

    SQL> SELECT REPLACE(WM_CONCAT(column), ',', '+') FROM table_name; ``` #### 5. CAST **功能**: 类型转换,将一种数据类型转换为另一种数据类型。 **语法**: CAST(表达式 AS 目标类型) **示例**: 将列`a`中的...

    oracle 用表结构创建 type

    SELECT REPLACE(wmsys.wm_concat(col), ',', ',' || CHR(10)) INTO cols_s FROM ( SELECT column_name || '' || DATA_TYPE || '(' || DATA_LENGTH || ')' AS col FROM user_TAB_COLUMNS WHERE table_name = 'xxx...

    SQL最佳实践

    在Oracle中,可以使用多种方法来实现这一目标,包括`WMSYS.WM_CONCAT`、`LISTAGG`、`COLLECT`等。 - **WMSYS.WM_CONCAT**:将多个字符串合并成一个。 - **LISTAGG**:将多个字符串值组合成一个字符串,可以指定分隔...

Global site tag (gtag.js) - Google Analytics