xzsfg6825 2017-09-20 02:18 采纳率: 0%
浏览 663

oracle 自定义聚合函数处理clob时间过长的问题如何解决

大神们,现有一问题,我自定义了一个类型和函数,用来聚合处理一个表中的某个字段的所有值,如下是类型图片说明图片说明
然后我又写了个存储过程用来执行这个函数,存储过程如下:图片说明其中我把TEST_TABLE_ORDER表中的position字段和strain字段的所有值都使用自定义的类型函数聚合存到了两个clob里面,进而存入了Test_Table_Info表中,这个过程和原理都没什么问题,存储过程可以正常执行,但是执行一次需要2分30秒的时间才能完成一次聚合,聚合的原数据存储形式为如下:
图片说明
聚合之后的数据存储形式为如下:图片说明其中position_clob和strain_clob字段都是clob数据类型,存储聚合之后的数据

目前我经过网上查资料,暂时这么解决字符串聚合问题的,但是用时太长了,无法满足项目要求,最好是把聚合存储和截取读取的时间控制在60秒或60秒之内,这样就可以了,所以再次想请教各位大神们这个该怎么优化啊?要是我这个无法优化的话,该换个啥方法呀?

  • 写回答

1条回答 默认 最新

  • lshen01 2023-03-16 10:29
    关注

    参考GPT和自己的思路:

    首先需要确定聚合存储和截取读取的具体时间是哪个环节造成的,是存储过程中的自定义聚合函数操作还是读取操作。其次可以尝试使用Oracle内置的聚合函数CONCAT来代替自定义的聚合函数,看是否可以提高效率。如果仍然无法满足项目需求,可以考虑使用分布式计算或者优化数据库结构等方法来提高性能。

    评论

报告相同问题?

悬赏问题

  • ¥50 易语言把MYSQL数据库中的数据添加至组合框
  • ¥20 求数据集和代码#有偿答复
  • ¥15 关于下拉菜单选项关联的问题
  • ¥20 java-OJ-健康体检
  • ¥15 rs485的上拉下拉,不会对a-b<-200mv有影响吗,就是接受时,对判断逻辑0有影响吗
  • ¥15 使用phpstudy在云服务器上搭建个人网站
  • ¥15 应该如何判断含间隙的曲柄摇杆机构,轴与轴承是否发生了碰撞?
  • ¥15 vue3+express部署到nginx
  • ¥20 搭建pt1000三线制高精度测温电路
  • ¥15 使用Jdk8自带的算法,和Jdk11自带的加密结果会一样吗,不一样的话有什么解决方案,Jdk不能升级的情况