证券

多表连接时,为何走表扫描

图中Q2和Q3的关联字段有WHERE (Q3."LICE_DOC_STATUS" = '2') AND (Q3."REGIE_ID" = '000000000222222') AND (Q1."IF_USED" = '1')  AND (Q3."LICENSE_CODE" = Q2."LICENSE_CODE") AND (Q3."CUST_ID" = Q2."CUST_ID")这里连接实际返回结果集行数为0,为何会让Q2... 显示全部

tabscan.jpg


图中Q2和Q3的关联字段有
WHERE (Q3."LICE_DOC_STATUS" = '2') AND (Q3."REGIE_ID" = '000000000222222') AND (Q1."IF_USED" = '1')  AND (Q3."LICENSE_CODE" = Q2."LICENSE_CODE") AND (Q3."CUST_ID" = Q2."CUST_ID")



这里连接实际返回结果集行数为0,为何会让Q2表作为外表,不带条件的用TABSCAN呢?能调整吗?
附件是执行计划,非常感谢各位.



附件:

附件图标 tabscan_01.fmt (39.97 KB)

附件图标 db2batch_01.out (643.17 KB)

收起
参与31

查看其它 30 个回答xu5762173 的回答

xu5762173 xu5762173 数据库管理员 Ess
回复 25# leo


    恩,大师说的有道理,这样做确实不太合理,希望有其他解决办法
证券 · 2013-06-21
浏览1028

回答者

xu5762173
数据库管理员 Ess
擅长领域: 服务器数据库存储
评论462

xu5762173 最近回答过的问题

回答状态

  • 发布时间:2013-06-21
  • 关注会员:0 人
  • 回答浏览:1028
  • X社区推广