ITPub博客

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

课程实践(二)续

原创 Oracle 作者:luisedalian 时间:2014-01-20 08:21:25 0 删除 编辑
案例十三

点击(此处)折叠或打开

  1. --iot_setup.sql
  2. SET ECHO ON

  3. CREATE TABLE iot_promotions
  4. (
  5.   promo_id NUMBER PRIMARY KEY,
  6.   promo_name VARCHAR2(40),
  7.   promo_subcategory VARCHAR2(30),
  8.   promo_category VARCHAR2(30),
  9.   promo_cost NUMBER,
  10.   promo_begin_date DATE,
  11.   promo_end_date DATE
  12. )
  13. ORGANIZATION INDEX;

  14. INSERT INTO iot_promotions
  15. SELECT promo_id, promo_name, promo_subcategory, promo_category, promo_cost, promo_begin_date, promo_end_date FROM promotions;

  16. --query13.sql
  17. SET ECHO ON
  18. SET TIMING ON
  19. SET AUTOTRACE TRACEONLY

  20. @flush.sql
  21. --让优化器决定执行计划,优化器选择的最佳的做法是执行全表扫描
  22. SELECT * FROM promotions WHERE promo_id > 300;

  23. --使用索引
  24. SELECT /*+ INDEX(promotions) */ * FROM promotions WHERE promo_id > 300;

  25. SET TIMING OFF
  26. SET AUTOTRACE OFF

  27. --执行query13.sql
  28. sh@TESTDB11>@query13.sql



点击(此处)折叠或打开

  1. --query14.sql
  2. --查询IOT表,优化器直接使用按索引组织的结构, 比上一步高效.
  3. SET ECHO ON
  4. SET TIMING ON
  5. SET AUTOTRACE TRACEONLY
  6. SET PAGESIZE 1000

  7. @flush.sql

  8. SELECT * FROM iot_promotions WHERE promo_id > 300;

  9. SET TIMING OFF
  10. SET AUTOTRACE OFF

  11. --执行query14.sql
  12. sh@TESTDB11>@query14.sql


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

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

注册时间:2012-02-06

  • 博文量
    1986
  • 访问量
    5643524