问题描述
我有7m行从遗留系统。
如果从select query中删除了函数,则会在10分钟内运行,但是使用函数会花费一个多小时。
我的函数只有一个返回语句:
此外,这些更换应按顺序进行。
我尝试了以下选项,但没有帮助:
1.有功能
2.Pragma UDF
调整此查询的其他选项是什么?
insert /*+ append */ into TGT_DATA ( LST_NAM, FRST_NAM, MDL_NAM ) SELECT /*+ parallel(10)*/ func_text_clean(LST_NAM), func_text_clean( FRST_NAM), func_text_clean( MDL_NAM) FROM P_ONST;复制
如果从select query中删除了函数,则会在10分钟内运行,但是使用函数会花费一个多小时。
我的函数只有一个返回语句:
replace( replace( replace( replace( REGEXP_REPLACE( REGEXP_REPLACE( REGEXP_REPLACE( regexp_replace(upper( ltrim(rtrim(text_data))), '[/.]',''), '["#Â??\?;]', ' ') , '(?i)^(?:(?![×Þß÷þø])[-0-9a-zÀ-ÿ])+$', ''), '(^[[:cntrl:]^\t]+)|([[:cntrl:]^\t]+$)',' ') , chr(13), ' ') , chr(10), ' ') , chr(9),' ') ,'
',' ')复制
此外,这些更换应按顺序进行。
我尝试了以下选项,但没有帮助:
1.有功能
2.Pragma UDF
调整此查询的其他选项是什么?
专家解答
Eeesh,那是您在那里进行的复杂替换!
您是否尝试过将替换直接放在SQL语句中?
假设你有 (这没什么区别...)
您可以将单个字符替换为一个翻译:
这可能会有所帮助。
但我怀疑很多性能打击来自这些正则表达式。
你能简化这些吗?
或者-假设只有 “一些” 行需要清理-你可以有一些检查只对包含 “坏” 字符的字符串这样做?
您是否尝试过将替换直接放在SQL语句中?
假设你有 (这没什么区别...)
您可以将单个字符替换为一个翻译:
with val as ( select 'a' || chr(10) || 'b' || chr(13) || 'c' v from dual ) select v, translate ( v, chr(10) || chr(13), ' ' ) from val; V TRANSLATE(V,CHR(10)||CHR(13),'') a b c a b c复制
这可能会有所帮助。
但我怀疑很多性能打击来自这些正则表达式。
你能简化这些吗?
或者-假设只有 “一些” 行需要清理-你可以有一些检查只对包含 “坏” 字符的字符串这样做?
文章转载自ASKTOM,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。
评论
相关阅读
Oracle RAC 一键安装翻车?手把手教你如何排错!
Lucifer三思而后行
571次阅读
2025-04-15 17:24:06
【纯干货】Oracle 19C RU 19.27 发布,如何快速升级和安装?
Lucifer三思而后行
505次阅读
2025-04-18 14:18:38
Oracle SQL 执行计划分析与优化指南
Digital Observer
472次阅读
2025-04-01 11:08:44
XTTS跨版本迁移升级方案(11g to 19c RAC for Linux)
zwtian
461次阅读
2025-04-08 09:12:48
墨天轮个人数说知识点合集
JiekeXu
459次阅读
2025-04-01 15:56:03
【ORACLE】记录一些ORACLE的merge into语句的BUG
DarkAthena
444次阅读
2025-04-22 00:20:37
Oracle数据库一键巡检并生成HTML结果,免费脚本速来下载!
陈举超
442次阅读
2025-04-20 10:07:02
【ORACLE】你以为的真的是你以为的么?--ORA-38104: Columns referenced in the ON Clause cannot be updated
DarkAthena
420次阅读
2025-04-22 00:13:51
Oracle 19c RAC更换IP实战,运维必看!
szrsu
405次阅读
2025-04-08 23:57:08
【活动】分享你的压箱底干货文档,三篇解锁进阶奖励!
墨天轮编辑部
385次阅读
2025-04-17 17:02:24