一直以来对于聚合还是停留在数字上的聚合,遇到了在Oracle数据库中实现字符串聚合的问题,记录一下。
在不写自定义函数的情况下,使用**wm_concat(字段名)**这个方法便可以实现字符串的聚合。
该函数是Oracle的内置函数,会使用’,'将拼接字段内容隔开
在11g版本使用时需要用to_char方法对结果进行类型转换,否则结果为变成为clob类型的数据
示例:
| id | name | class |
|---|---|---|
| 1 | tom | 1班 |
| 2 | jerry | 1班 |
| 3 | Clark | 2班 |
| 4 | Bruce | 2班 |
现在需要记录每个班级所有学生的姓名
SELECT TO_CHAR(WM_CONCAT(NAME)) SUMNAME,CLASS FROM T_STUDENT GROUP BY CLASS;
得到结果
| sumname | class |
|---|---|
| tom,jerry | 1班 |
| Clark,Bruce | 2班 |
本文介绍如何在Oracle数据库中实现字符串聚合,使用wm_concat函数拼接指定字段,并通过示例展示如何获取班级内所有学生的姓名。
2012

被折叠的 条评论
为什么被折叠?



