pZBJS_ZJYE里,处理本次数据那段update,执行时间非常长

来源:百度文库 编辑:神马文学网 时间:2024/04/28 03:50:28
何先华(86354060)  9:20:42
pZBJS_ZJYE里,处理本次数据那段update,执行时间非常长,一般半个多小时,有没有人遇到过?彭恭辉(286174735)  9:40:06
虽然说慢了点。
不过你们计划的ETL采集是多长时间。
晚上2点开始。
6点应该差不多了
何先华(86354060)  9:40:54
ETL是结束了,但是资金余额的那个每次都超时,陈智伟(30150035)  9:41:57
看看是不是KHH的索引没用上,数值型跟字符型的区别。之前有碰到
吴敬章(35039148)  9:41:59
ETL都结束了资金余额还能超时,怀疑你处理的数据对不对
彭恭辉(286174735)  9:42:02
才半个小时会提示超时?
我记得ETL以前有的过程都有1个小时没做完的。
也不会提示超时。
何先华(86354060)  9:42:49
      --处理本次数据
      update tZB_R_KH_2101 a
         set JSRQ = v_rq_tmp
       where  a.JSRQ = 30000000
         and exists (select 1
                from tZJMXLS b
               where abs(SRJE - FCJE) > 0
                 and a.FZ2 = b.ZJZH
                 and a.KHH = b.KHH
                 and b.rq=v_rq
                 and (i_jgbm = 'ALL' or JGBM = i_jgbm));
何先华(86354060)  9:43:12
调试的时候就这段做了半个多小时,
何先华(86354060)  9:43:55
但是最后还是会成功的,可是放到ETL里晚上执行的时候,就提示超时了,2101的数据没生成
黄学捷(99065388)  9:44:08
换成merge into 写法,这样写非常低效.黄学捷(99065388)  9:57:19
TO何先华:MERGE INTO tZB_R_KH_2101 a
USING ( select KHH,ZJZH from tZJMXLS where abs(SRJE - FCJE) > 0 AND (i_jgbm = 'ALL' or JGBM = i_jgbm) and RQ=v_rq ) B
ON(A.FZ2=B.ZJZH AND A.KHH=B.KHH AND  A.JSRQ=30000000 )
WHEN MATCHED THEN
UPDATE SET JSRQ=v_rq_tmp