优化-使用wm_concat导致的性能问题

问题描述

使用wm_concat导致的性能问题
sql类似如下
select

a.name
wm_concat(a.c1)
wm_concat(a.c2)
wm_concat(a.c3)
from table a group by a.name

这里要按名称分组将其他三个值都拼接起来,返回的都是clob类型,导致查询非常慢
而且占用相当大的表空间。。。请教大神,这要如何优化?a.c1等拼接的值很容易超过
4000。。。

解决方案

wm_concat的使用

解决方案二:
你的表结构不合理,你应该避免在查询的时候拼接。

时间: 2024-09-14 00:43:43

优化-使用wm_concat导致的性能问题的相关文章

MYSQL性能优化-安装时优化参数配置提高服务性能

安装时优化参数配置提高服务性能 在Linux下安装Mysql采用默认配置安装的Mysql却未必是工作在最佳性能状态的,需要对其进行优化.一般认为在 Mysql的配置文件中,下列系统参数是比较关键的: (1) interactive_timeout : 服务器在关闭它前在一个交互连接上等待行动的秒数.一个交互的客户被定义为对 mysql_real_connect()使用 CLIENT_INTERACTIVE 选项的客户. 默认数值是28800,我把它改为7200. (2) back_log : 要

【中亦安图】导致Oracle性能抖动的参数提醒(4)

第一章 技术人生系列 · 我和数据中心的故事(第四期)-导致Oracle性能抖动的参数提醒 中亦安图 | 2016-01-25 21:39 前言 不知不觉,技术人生系列·我和数据中心的故事来到了第四期.小y又和大家见面了! 当您看到业务系统压测呈现以下波浪形的tps曲线时,你会怎么下手? 小y(中亦科技)今天要和大家分享的就是这样一个业务系统压测性能问题的分析和解决过程.这个问题困扰了客户相当长一段时间,幸运的是,小y通过远程在10分钟定位到了问题的原因并帮助客户最终解决了问题.需要说明的是,在

使用智能优化器提高Oracle的性能极限

oracle|性能|优化  使用智能优化器提高Oracle的性能极限       消耗在准备新的SQL语句的时间是Oracle SQL语句执行时间的最重要的组成部分.但是通过理解Oracle内部产生执行计划的机制,你能够控制Oracle花费在评估连接顺序的时间数量,并且能在大体上提高查询性能.准备执行SQL语句       当SQL语句进入Oracle的库缓存后,在该语句准备执行之前,将执行下列步骤: 1)        语法检查:检查SQL语句拼写是否正确和词序. 2)        语义分析

优化ASP.NET应用程序性能研究与探讨

asp.net|程序|性能|优化 摘 要 本文从页面.数据访问.字符串操作三方面探讨如何提高ASP.NET应用程序的性能,并提供了几种测试工具用于检测ASP.NET网站性能. 关键词 ASP.NET 应用程序 性能 优化 网站的性能对于ASP.NET程序开发人员来说非常重要.一个优秀的网站虽然有美观的页面设计,完善的服务功能,但是打开网页时有长时间的延迟,用户最终将会无法忍受.尤其对于大型的电子商务网站而言,每秒钟有数万用户同时访问,没有良好的网站性能,根本无法满足庞大的需求. ASP.NET作

SQL Server 优化器特性导致的内存授予相关BUG

原文:SQL Server 优化器特性导致的内存授予相关BUG 我们有时会遇到一些坑,要不填平,要不绕过.这里为大家介绍一个相关SQL Server优化器方面的特性导致内存授予的相关BUG,及相关解决方式,也顺便回答下邹建同学的相关疑问.   问题描述 一个简单的查询消耗了匪夷所思的内存.(邹建同学发现的) 原文链接 Code create table test_mem ( id int identity(1,1) primary key, itemid int not null, date d

索引列顺序导致的性能问题

今天和大家分享一个很有意思的例子,关于索引列的顺序导致的性能问题. 发现数据库的性能比较差,CPU消耗很高,抓了一个awr,发现瓶颈在sql上,top 1的sql是一个很简单的update语句,没有复杂的条件和表关联. 竟然导致CPU 99% 抓了一个explain plan 的report和自己的理解,先简单说明一下表的情况. 表,TEST_NOTIF_REQ_LOG, 主键基于两个列(partition_key,NOTIFICATION_SEQ_NO),执行计划,update语句,还有数据分

一条insert语句导致的性能问题分析(二)

今天对之前描述的问题一条insert语句导致的性能问题分析(一) 进行了进一步的补充. 有一条insert语句的主要性能瓶颈在于insert子句中的查询语句,查询中的主要资源消耗在于对两个表进行了多次关联 语句主要的结构如下: insert into xxxxx   (select * from TEST_vip_new minus select * from TEST_vip_new_bak         ) a left join TEST_vip_new_bak b         on

insert导致的性能问题大排查(r11笔记第26天)

今天开发的同学小窗口消息给我,向我咨询一个ORA错误的问题. 错误代码是ORA-30036,使用oerr ora 30036查看,由于是undo空间无法扩展导致. 这是一个统计业务的数据库,而且平时的负载其实并不高,确实有一些奇怪.首先排除了大事务导致的原因,查看数据库日志,和开发同学沟通,没有发现相关的错误信息. 所以第一感觉这是一个偶然发生的情况,不过开发的这位同学貌似碰到了问题,他说从应用端抛出了ORA-30036的错误. java.sql.BatchUpdateException:ORA

merge语句导致的性能问题紧急优化

晚上正在休息的时候,突然收到一封报警邮件. 报警内容: CPU utilization is too high ------------------------------------ 报警级别: PROBLEM ------------------------------------ 监控项目: CPU idle time:59.11 % ------------------------------------ 这个报警信息已经非常明确,CPU使用率很紧张了.这台服务器上运行着Oracle和M