现在的位置: 首页 > 综合 > 正文

DB2在多表关联的情况下进行UPDATE的时候真有点BT!

2014年04月04日 ⁄ 综合 ⁄ 共 312字 ⁄ 字号 评论关闭

t_sd_saleorderentry表有40多万记录,在DB2下看他的执行计划为140000,且对t_sd_saleorderentry进行了全表扫描浪费了大部分的时间,

2.jpg

本以为DB2可以智能的把()中的关联条件转化出来,在更新表数据的时候,可以智能地更新相关的数据,但看样子不能,我只好把()的关联条件又写了一份放到WHERE里面,加在了原先的后面,结果执行计划就降到了900多(FID有索引),DB2感觉真有点烂,这个东东还要写两遍呀

1.jpg

不过也算学到了点东西,破DB2在UPDATE的时候,如果不硬在WHERE中加上限制条件,而只是在SET中隐含限制的时候,DB2在大数据量的情况下肯定会有性能问题,因为它会进行全表扫描的.

抱歉!评论已关闭.