Oracle数据仓库查询优化技术
2007-05-06 12:07:32 来源:WEB开发网核心提示: 假如我们要得到每月的销售总量统计,可以执行以下查询:SQL> set autot trace expSQL> select t.t_month, sum(f.amount1),sum(f.amount2)2from time_dim t,fact_sales f3where t
假如我们要得到每月的销售总量统计,可以执行以下查询:
SQL> set autot trace exp
SQL> select t.t_month, sum(f.amount1),sum(f.amount2)
2 from time_dim t,fact_sales f
3 where t.time_id=f.time_id
4 group by t.t_month;
已选择33行。
执行计划
----------------------------------------------------------
Plan hash value: 53462861
----------------------------------------------------------------------------------
| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |
----------------------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 1000 | 61000 | 9 (23)| 00:00:01 |
| 1 | HASH GROUP BY | | 1000 | 61000 | 9 (23)| 00:00:01 |
|* 2 | HASH JOIN | | 1000 | 61000 | 8 (13)| 00:00:01 |
| 3 | TABLE ACCESS FULL| TIME_DIM | 1000 | 22000 | 4 (0)| 00:00:01 |
| 4 | TABLE ACCESS FULL| FACT_SALES| 1000 | 39000 | 3 (0)| 00:00:01 |
----------------------------------------------------------------------------------
创建一个月度统计的物化视图:
SQL> create materialized view mv_month
2 refresh complete
3 enable query rewrite
4 as
5 select t.t_month, sum(f.amount1),sum(f.amount2)
6 from time_dim t,fact_sales f
7 where t.time_id=f.time_id
8 group by t.t_month;
实体化视图已创建。
- ››oracle 中 UPDATE nowait 的使用方法
- ››Oracle ORA-12560解决方法
- ››Oracle 10g RAC 常用维护命令
- ››Oracle如何在ASM中定位文件的分布
- ››Oracle的DBMS_RANDOM.STRING 的用法
- ››oracle 外部表导入时间日期类型数据,多字段导入
- ››Oracle中查找重复记录
- ››oracle修改用户登录密码
- ››Oracle创建删除用户、角色、表空间、导入导出等命...
- ››Oracle中登陆时报ORA-28000: the account is lock...
- ››Oracle数据库在配置文件中更改最大连接数
- ››Oracle中在pl/sql developer修改表的两种方式
更多精彩
赞助商链接