|
|
 |
 |
|
|
 |
|
使用查询改写提高查询性能
|
|
|
|
编辑:华夏媒体 作者:未知 来源:网络 时间:2006-07-29 总浏览量:5452 |
|
文字大小:[ 大 中 小 ]
文字颜色: 双击滚屏/单击停止 |
|
[上一页] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [下一页]
|
3 SORT UNIQUE 4 TABLE ACCESS FULL TIME 5 MAT_VIEW REWRITE ACCESS FULL FIVE_YR_MONTHLY_SALES_MV 在Oracle9i数据库中,如果物化视图中没有查询所需要的全部数据,查询就不会使用物化视图。在Oracle数据库10g中,已经放松了这一限制,因此查询改写可以由物化视图中获得尽可能多的数据,并利用细目表获得物化视图中没有的数据。和往常一样,优化器在做出执行此操作的决定时考虑了有改写和无改写情况下的查询成本。 例如,清单 7中的查询要求2000年至2003年之间的月销售额,它将使用从2000年至2002年的物化视图,而只需要2003年的细目表。 代码清单 7:查询物化视图和细目表
SELECT t.month, p.product_id, SUM(ps.purchase_price) as sum_of_sales FROM time t, product p, purchases ps WHERE t.time_key = ps.time_key AND ps.product_id = p.product_id AND t.year BETWEEN 2000 and 2003 GROUP BY t.month, p.product_id; Id Operation Name __________________________________________________ 0 SELECT STATEMENT 1 SORT GROUP BY 2 VIEW 3 UNION-ALL
|
|
[上一页] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [下一页]
|
|
|
打印 收藏 关闭 至顶部 |
|
 |
|