WMSYS.WM_CONCAT() 行列转换

Oracle WMSYS.WM_CONCAT函数重建指南 本文还有配套的精品资源,点击获取 简介:Oracle数据库中,WMSYS用户管理着WM系统,负责数据仓库的ETL操作。其中WMSYS.WM_CONCAT函数是关键组件,用于字符串连接。当该函数出现问题时,需要通过一系列步骤重建,包括备份数据、登录SYS用户、检查和删除现有函数、编写并执行创建函数的代码、验证函数、授权、更新依赖对象,并检查日志文件以确保重建成功。本指南详细介... 阅读详情
wmsys.wm_concat这个函数可能导致RAC节点重启
应用中有个行列转换需要使用wmsys.wm_concat这个函数来做,结果发现一旦使用了这个函数,就会导致相应的节点CPU和内存消耗非常之高,接下主机无法响应,导致节点被踢出重启,甚至其他节点为了防止splitbrain而将自己也重启了。看来这个函数的使用还是需要小心。

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

wmsys.wm_concat这个有趣有用的函数,它的作用是以','链接字符。

例子如下:

SQL> create table idtable (id number,name varchar2(30));

Table created

SQL> insert into idtable values(10,'ab');

1 row inserted

SQL> insert into idtable values(10,'bc');

1 row inserted

SQL> insert into idtable values(10,'cd');

1 row inserted

SQL> insert into idtable values(20,'hi');

1 row inserted

SQL> insert into idtable values(20,'ij');

1 row inserted
SQL> insert into idtable values(20,'mn');

1 row inserted

SQL> select * from idtable;

        ID NAME
---------- ------------------------------
        10 ab
        10 bc
        10 cd
        20 hi
        20 ij
        20 mn

6 rows selected
SQL> select id,wmsys.wm_concat(name) name from idtable
  2  group by id;

        ID NAME
---------- --------------------------------------------------------------------------------
        10 ab,bc,cd
        20 hi,ij,mn

SQL> select id,wmsys.wm_concat(name) over (order by id) name from idtable;

        ID NAME
---------- --------------------------------------------------------------------------------
        10 ab,bc,cd
        10 ab,bc,cd
        10 ab,bc,cd
        20 ab,bc,cd,hi,ij,mn
        20 ab,bc,cd,hi,ij,mn
        20 ab,bc,cd,hi,ij,mn

6 rows selected

SQL> select id,wmsys.wm_concat(name) over (order by id,name) name from idtable;

        ID NAME
---------- --------------------------------------------------------------------------------
        10 ab
        10 ab,bc
        10 ab,bc,cd
        20 ab,bc,cd,hi
        20 ab,bc,cd,hi,ij
        20 ab,bc,cd,hi,ij,mn

6 rows selected

个人觉得这个用法比较有趣.

SQL> select id,wmsys.wm_concat(name) over (partition by id) name from idtable;

        ID NAME
---------- --------------------------------------------------------------------------------
        10 ab,bc,cd
        10 ab,bc,cd
        10 ab,bc,cd
        20 hi,ij,mn
        20 hi,ij,mn
        20 hi,ij,mn

6 rows selected

SQL> select id,wmsys.wm_concat(name) over (partition by id,name) name from idtable;

        ID NAME
---------- --------------------------------------------------------------------------------
        10 ab
        10 bc
        10 cd
        20 hi
        20 ij
        20 mn

6 rows selected

 

本文来自优快云博客,转载请标明出处:http://blog.youkuaiyun.com/YY_MM_DD/archive/2008/10/30/3182953.aspx

oracle行转列聚合函数WMSYS.WM_CONCAT 行转列函数,对于学习sql查询的朋友们,可能会遇到这样的要求,此文档中做了详细记载,希望可以帮到你! 立即下载

相关推荐

oracle替换wm_concat varchar处理为clob处理的方法

是处理wm_concat中以varchar处理合并列字段过小。 clob 可以加大处理。 oracle 9I oracle 10G 必备

oracle 12C wmsys.wm_concat()函数

对于一些业务,需要连接函数把内容拼接文本文件的时候,借助合适的函数,非常重要,减少很多工作。 目前常用的连接函数有 wmsys.wm_concat()和 LISTAG...

cpgl40148的博客 4673

瑞芯微RK3506开发板Ethercat主站性能优化实战:从内核配置到微秒级延迟控制

本文详细介绍了在瑞芯微RK3506开发板上实现EtherCAT主站微秒级延迟控制的实战优化方案。核心在于部署Preempt-RT实时内核,并进行深度系统调优,包括CPU隔离、中断亲和性设置、内存锁定及电源管理调整。通过绕过Linux网络栈的专用驱动加载与配置,最终实现了稳定的高性能实时控制,满足工业自动化需求。

tcp8optimizer的博客 315

关于ORACLE wmsys.wm_concat 行转列函数使用

转自http://blog.csdn.net/pengdingxu10/article/details/46438567 这两天在项目中遇到了一个问题,就是系统中使用了wmsys.wm_concat引发的相关问题,PM也提议不要使用,原因有下: 1.该函数不是Oracle公开的系统函数,它的用户是wmsys,而不是sys或者system,oracle很有可能在版本升级或者补丁的时候取消或者

xpliruizhi123的博客 982

矩阵束(Matrix Pencil)入门:从通信系统到控制理论,它为何是建模利器?

本文深入探讨矩阵束(Matrix Pencil)在通信系统与控制理论中的关键作用,揭示其作为复杂系统建模利器的独特价值。从MIMO系统的多径干扰分析到电力系统稳定性判据,矩阵束通过`A-λB`方程求解提供精准建模方案,显著提升5G通信和工业控制等领域的性能表现。

weixin_30134145的博客 358

打造会自主学习的 AI 助手:OpenClaw 记忆系统完全指南

这不是科幻,这是我正在使用的系统。我的 AI 助手「小琳」已经运行了一段时间,积累了大量的知识和经验,而且还在不断学习成长。心跳(Heartbeat)是 OpenClaw 的定时轮询机制,可以让 AI 主动做一些事情。你有没有遇到过这样的困扰:每次和 AI 对话,它都像失忆了一样,之前聊过的内容完全不记得?设置定时任务:每天早上 8 点,查询天气和热点新闻,通过钉钉推送给我。让你的 AI 助手拥有持久记忆,能够自主学习、总结经验、不断成长。这不仅仅是一个「能记住事情的 AI」,而是一个。

Honmaple的博客 1633

使用WMSYS.WM_CONCAT函数实现行列转换

SQL> select version from v$instance; VERSION-----------------10.2.0.1.0 SQL> SQL> create table IDTABLE  2  (  3    id  number,  4    val varchar2(20)  5  )  6  ; Table created SQL> SQL> insert into ID

JACKY.昊昊 的专栏 7704

TensorRT-LLM环境配置避坑指南:从安装到实战

本文是一份详尽的TensorRT-LLM环境配置避坑指南。文章重点解析了从Python、CUDA、PyTorch版本选择,到解决mpi4py安装这一核心难题的完整流程,并提供了经过验证的稳定版本组合与实战排错方案,帮助开发者高效部署大语言模型推理优化环境。

a0b1c2d3的专栏 983

SQL SERVER 合并重复行,行列转换(sql server2000 里面如何实现oracle10g的 wmsys.wm_concat() 的功能?)

sql server2000 里面如何实现oracle10g的 wmsys.wm_concat() 的功能? 以及学习以下关键字: 一、行列转换关键字PIVOT与UNPIVOT的使用 二、OUTER APPLY ----乌龟代码--- 合并列值 --*************************************************************************

男儿当自强 2357

企业数字化转型解决方案架构设计:一个五维全景视角

本文系统探讨了企业数字化转型的架构设计框架,提出五维协同模型:企业架构作为战略罗盘,业务架构聚焦价值创造,应用架构实现能力载体,数据架构提供智能燃料,技术架构奠定基础支撑。文章深入分析了各架构域的核心要素、设计原则及相互关系,并指出数字化转型需通过渐进路径,结合战略引领、技术赋能和组织变革,构建有机统一的架构体系。该框架为企业应对数字化复杂性提供了系统性方法论,强调从整体视角实现技术与业务的深度融合。

金牌架构师 1256

JS逆向-Protobuf逆向解析

目录一、什么是Protobuf二、Protobuf环境配置三、Protobuf实例序列化与反序列化四、逆向解析 Protobuf案例1、python序列化2、python反序列化 一、什么是Protobuf 1、protocol buffers介绍:是一种语言无关、平台无关、可扩展的序列化结构数据的方法。严格说不算是加密,只能是叫序列化结构数据,让可读变为疑似的乱码,那反序列化即让疑似的乱码变为可读 2、protobuf使用流程的前提是有一个.proto文件,对逆向而言就是还原.proto文件,选择

十一姐的博客 1万+

oracle wmsys.wm_concat函数

wmsys.wm_concat函数,oracle 10g引入的;作用:连接字符串,也可以用于将多行数据,转换为一行。1.用于行列转换SQL> select * from a;     ITEMID                    TYPEID TYPENAME----------- ------------------------- ----------          1                         2 bbb          2                      

产品经理,程序人生 8570

Python爬虫实战:爬取ETF基金持仓变化

在python复制编辑本文详细介绍了如何使用Python的Scrapy框架爬取ETF基金的持仓变化信息,包括项目的搭建、数据的提取与存储、以及数据的可视化分析。通过本项目,读者可以掌握基本的网页爬虫技术,并应用于实际的财经数据采集与分析中。

2201_76125261的博客 629

Oracle行列转换

一、建表与插入数据 1.1、建表 1 create table kecheng 2 ( 3 id NUMBER, 4 name VARCHAR2(20), 5 course VARCHAR2(20), 6 score NUMBER 7 ); 8 insert into kecheng (id, name, cours...

diqiansuo0046的博客 140

rk3576 点亮 LCD(eDP)

RK3576 处理器集成了对 **eDP (Embedded DisplayPort)** 接口的支持,主要用于驱动嵌入式或笔记本电脑的内置屏幕。支持 **eDP 1.3 版本协议**, 最大可支持 ****4K@120Hz**。

weixin_35723192的博客 353

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

Oracle--查

一、固定行列转换 1、Decode方式 SELECT ID,NAME, SUM(DECODE(course,'语文',score,0)) 语文,--这里使用max,min都可以 SUM(DECODE(course,'数学',score,0)) 数学, SUM(DECODE(course,'英语',score,0)) 英语, SUM(DECODE(course,'历史',score,0)) 历...

JessicaQNL的博客 709

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

几个SQL函数

字符连接:concat() 字符连接,并实现行列转换[在plsql中]: wmsys.wm_concat() :      e.g:select time,name,to_char(wmsys.wm_concat(itemname)) AS item from dba_users group by time,name --用to_char可避免出现<c...

ppsylspp的博客 222

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

Sql Server2005 Transact-SQL 新兵器学习总结之-APPLY 运算符 外篇

sql server2000 里面如何实现oracle10g的 wmsys.wm_concat() 的功能? 以及学习以下关键字: 一、行列转换关键字PIVOT与UNPIVOT的使用 二、OUTER APPLY 三、FOR XML AUTO 、FOR XML PATH  http://www.cnblogs.com/love-summer/archive/2012/03/27/2...

weixin_33724059的博客 87

wmsys.wm_concat 所存在危险 + 函数自定义——代码

本文讲述了,Oracle数据库通过wmsys.wm_concat进行行列转换的危险性。在网上流传很多文章,描述了使用wmsys.wm_concat对象实现行列转换的方法,这种方法不被Oracle所推荐,因为WMSYS用户用于Workspace Manager,其函数对象可能因版本而不同,这种变化在11.2.0.3及10.2.0.5中体现出来。原本WM_CONCAT函数返回值为VARCHAR2变更为C

qq_36047372的博客 1074

WMSYS.WM_CONCAT函数的用法

  WMSYS.WM_CONCAT函数的用法 wmsys.wm_concat:列转行 select wmsys.wm_concat(name) from test;   wm_concat:行转列 select wm_concat(name) from test;   我们通过 10g 所提供的 WMSYS.WM_CONCAT 函数可以完成 行转列的效果        例子如下...

759

WMSYS.WM_CONCAT的用法 行列转置

select t.rank, t.Name from t_menu_item t;     10 CLARK     10 KING     10 MILLER     20 ADAMS     20 FORD     20 JONES     20 SCOTT     20 SMITH     30 ALLEN     30 BLAKE     30 JAMES

刘召 752

mysql的wm_concat函数_oracle 函数 WMSYS.WM_CONCAT 的用法 与 mysql 函数GROUP_CONCAT的用法-阿里云开发者社区...

1、oracle函数 WMSYS.WM_CONCAT的使用如图,将图1的结果变成图2的结果,使用函数 WMSYS.WM_CONCAT 即可。查询语句需要配合使用group byselect aa,wmsys.wm_concat(t1.name) from (select t.name,to_char(t.createdate,'yyyy-mm-dd') aa from td_user t wher...

weixin_42515063的博客 1823

mysql分组函数wm_oracle 函数 WMSYS.WM_CONCAT 的用法 与 mysql 函数GROUP_CONCAT的用法

一、CONCAT()函数 CONCAT()函数用于将多个字符串连接成一个字符串。 使用数据表Info作为示例,其中SELECT id,name FROM info LIMIT 1;的返回结果 为 +----+--------+ | id | name| +----+--------+ |1 | BioCyc | +----+--------+ 1、语法及使用特点1、oracle函数 WM...

weixin_42151772的博客 1173
上一篇: 合同到期,换个环境,换个心情
下一篇: J2ME
killcoo
博客等级 码龄19年 18粉丝 7原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值