ITPub博客

首页 > 数据库 > Oracle > 课程实践(二)续

课程实践(二)续

原创 Oracle 作者:luisedalian 时间:2014-01-19 10:15:57 0 删除 编辑
案例六

点击(此处)折叠或打开

  1. --执行drop_customers_indexes.sql, 删除除主键索引外的所有索引.
  2. sh@TESTDB11>@drop_customers_indexes

  3. --在customers表上创建3个不同的位图索引, 并查看(Luise)
  4. sh@TESTDB11>CREATE BITMAP INDEX bidx_cust_gender ON customers(cust_gender) NOLOGGING COMPUTE STATISTICS;
  5. sh@TESTDB11>CREATE BITMAP INDEX bidx_cust_postal_code ON customers(cust_postal_code) NOLOGGING COMPUTE STATISTICS;
  6. sh@TESTDB11>CREATE BITMAP INDEX bidx_cust_credit_limit ON customers(cust_credit_limit) NOLOGGING COMPUTE STATISTICS;
  7. CREATE BITMAP INDEX bidx_cust_year_of_birth ON customers(cust_year_of_birth) NOLOGGING COMPUTE STATISTICS;

  8. --query07.sql
  9. --此查询包含一个复杂的WHERE子句,非常适合于使用位图索引. 优化程序使用2个位图索引,与全表扫描相比,它的成本更低.
  10. SET ECHO ON
  11. SET TIMING ON
  12. SET AUTOTRACE TRACEONLY
  13. SET PAGESIZE 1000

  14. @flush.sql
  15. SELECT c.* FROM customers c
  16. WHERE (c.cust_year_of_birth = \'1970\' AND c.cust_postal_code = 40840) AND NOT cust_credit_limit = 15000;

  17. SET TIMING OFF
  18. SET AUTOTRACE OFF

  19. --执行query07.sql
  20. sh@TESTDB11>@query07.sql



点击(此处)折叠或打开

  1. --使优化程序不能再使用在cust_year_of_birth列上创建的索引
  2. sh@TESTDB11>show parameter optimizer_use_invisible_indexes;

  3. NAME TYPE VALUE
  4. ------------------------------------ ----------- ------------------------------
  5. optimizer_use_invisible_indexes boolean FALSE

  6. sh@TESTDB11>alter index bidx_cust_year_of_birth invisible;
  7. sh@TESTDB11>SELECT index_name, visibility FROM user_indexes WHERE table_owner = \'SH\' AND table_name = \'CUSTOMERS\';

  8. INDEX_NAME VISIBILIT
  9. ------------------------------ ---------
  10. CUSTOMERS_PK VISIBLE
  11. BIDX_CUST_YEAR_OF_BIRTH INVISIBLE
  12. BIDX_CUST_CREDIT_LIMIT VISIBLE
  13. BIDX_CUST_POSTAL_CODE VISIBLE

  14. --执行query07.sql 执行的SQL语句相同.但优化器找不到使用位图索引的好的计划.
  15. sh@TESTDB11>@query07.sql


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/17013648/viewspace-1072687/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2012-02-06

  • 博文量
    1986
  • 访问量
    5641821