oracle中wm_conocat()函数的应用

简介: oracle中wm_conocat()函数的应用

简述

在数据查询时,分组查询后想把其他字段值合并起来作为一个字段值,这是会用到wm_concat()函数。

示例

让我们创建一张test表,并且对其进行数据的填充,表test如下:

创建SQL如下:

create table TEST
(
  DEPT_CODE VARCHAR2(150),
  DEPT_NAME VARCHAR2(150),
  USER_CODE VARCHAR2(150),
  USER_NAME VARCHAR2(150)
)

image.png

我们现在的要求是什么呢?

那就是要按照dept_code,dept_name分组后,将uesr_code,user_name合并为一个字段,以此来向前台提供相关数据。

查询sql如下所示:

select t.dept_code,t.dept_code,wm_concat(t.user_code),wm_concat(t.user_name) from test t group by t.dept_code,t.dept_name

查询结果如下图所示

在图中可以看出来目前已经将uesr_code,user_name合并为一个字段,而且将原本uesr_code,user_name中的内容拼接在一起了。非常满足我们的需求。

image.png

需求扩展

虽然现在实现了分组合并字段,但是有的字段里可能是会出现重复值的,这个我们又要如何去解决一下呢?

自然就是要去重了,这里就可以使用 distinct 进行去重。

查询SQL如下所示:

select t.dept_code,t.dept_code,wm_concat(distinct t.user_code),wm_concat(distinct t.user_name) from test t group by t.dept_code,t.dept_name

查询结果如下图所示

image.png

在图中我们就可以看到一个完美无缺的结果了,没有像上一步出现的重复值问题了,就此这个需求就算是搞定了。

目录
相关文章
|
存储 Oracle 关系型数据库
Oracle数据库的应用场景有哪些?
【10月更文挑战第15天】Oracle数据库的应用场景有哪些?
1035 64
|
7月前
|
SQL Oracle 关系型数据库
解决大小写、保留字与特殊字符问题!Oracle双引号在SQL中的特殊应用
在Oracle数据库开发中,双引号的使用是一个重要但易被忽视的细节。本文全面解析了双引号在SQL中的特殊应用场景,包括解决标识符与保留字冲突、强制保留大小写、支持特殊字符和数字开头标识符等。同时提供了最佳实践建议,帮助开发者规避常见错误,提高代码可维护性和效率。
275 6
|
8月前
|
SQL 存储 Oracle
【YashanDB知识库】Oracle pipelined函数在YashanDB中的改写
【YashanDB知识库】Oracle pipelined函数在YashanDB中的改写
|
存储 Oracle 关系型数据库
关系型数据库Oracle应用场景
【7月更文挑战第5天】
538 3
|
SQL Oracle 算法
|
SQL 存储 Oracle
Oracle数据库SQL语句详解与应用指南
在数字化时代,数据库已成为各类企业和组织不可或缺的核心组件。Oracle数据库作为业界领先的数据库管理系统之一,广泛应用于各种业务场景。掌握Oracle数据库的SQL语句是数据库管理员、开发人员及运维人员的基本技能。本文将详细介绍Oracle数据库SQL语句的基本概念、语法、应用及最佳实践。一、Or
459 3
|
Oracle 关系型数据库 数据处理
|
SQL Oracle 关系型数据库
|
SQL Oracle 关系型数据库
Oracle|内置函数之INSTR
【7月更文挑战第5天】
|
Oracle 关系型数据库 数据挖掘

推荐镜像

更多