Oracle中测试不使用索引和使用索引的效果比较分析,啥也不用说了,有图有真相。在本次试验中,体现的Oracle中影响数据存取效率的

Oracle中测试不使用索引和使用索引的效果比较分析,啥也不用说了,,有图有真相。

1.创建测试数据库,再先批量插入数据:

SQL> create table StudentInformation(id number(20) not null primary key,name varchar2(10) not null,

sex varchar2(2),address varchar2(20),hobby varchar(20));

declare

maxrecords constant int:=180000;

i int :=1009;

begin

for i in 120000..maxrecords loop

insert into STUDENTINFORMATION("ID","NAME",SEX,ADDRESS,HOBBY)

values(i,TO_CHAR('99'+i),'

end loop;

dbms_output.put_line(' 成功录入数据!');

commit;

end;

如此插入大量数据,修改address

2.测试环节:

创建索引:SQL> CREATE INDEX index_address_hobby ON STUDENTINFORMATION(address,hobby);

分析表和索引:SQL>analyze table STUDENTINFORMATION compute statistics for table for all indexes for all columns;

SQL> set autotrace traceonly;

SQL>set timing on;

SQL> select * from StudentInformation where hobby='打篮球';

Oracle使用索引:

SQL> SELECT/**//*+ INDEX (StudentInformation index_address_hobby )*/ * FROM StudentInformation WHERE hobby='打篮球';

显示,使用索引导致的逻辑读取数是不使用索引导致的逻辑读的多近200个的逻辑读。因此,Oracle选择了全表扫描而不是索引扫描。

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

oracle 索引 效果,Oracle中不使用索引和使用索引的效果比较分析相关推荐

  1. mysql普通索引命中_MySQL中因字段字符集不同导致索引不能命中的解决方法

    什么是索引?为什么要建立索引? 索引用于快速找出在某个列中有一特定值的行,不使用索引,MySQL必须从第一条记录开始读完整个表,直到找出相关的行,表越大,查询数据所花费的时间就越多,如果表中查询的列有 ...

  2. 学习型索引在数据库中的应用实践

    9月29日,我们邀请到开务数据库研发工程师邹彤老师与大家一起研读大咖论文,主题为<学习型索引在数据库中的应用实践>. 索引是数据库引擎的重要组成部分,在当下数据井喷式爆发的阶段,如何高效准 ...

  3. oracle巡检项,Oracle数据库巡检参考项

    是否为归档模式 数据库是否为归档模式,可以使用archivelog list查看 是否为force logging模式 数据库是否启用了force logging 是否使用spfile 这个新特性,其 ...

  4. oracle中怎么查看索引,查看oracle中表的索引

    oracle中表的索引信息存在 user_indexes 和 user_ind_columns 两张表里面, 其中, user_indexes 系统视图存放是索引的名称以及该索引是否是唯一索引等信息, ...

  5. Oracle中重建表的全局的索引、分区索引、及同时建全局和分区索引----脚本

    在oracle中,重建普通表上的索引很简单.要重建特定索引,只需执行如下sql命令: ALTER INDEX INDEX_NAME Rebuild; 这里INDEX_NAME 代表索引的名字,下同. ...

  6. oracle index include,oracle中与索引相关的视图—all_indexes | 学步园

    ALL_INDEXES描述了与索引有关的信息,为了使部分字段的内容更准确,我们需要通过analyze或者dbms_stats包来收集与索引有关的统计信息(这部分字段标记为带*). 首先看一下官网给出的 ...

  7. oracle unpivot 索引_oracle 11g中的pivot和unpivot转换操作

    对于pivot和unpivot这个Oracle 11g的新功能一直就想总结一下,正好赶上论坛中有很多人会提问相关的问题,于是利用空闲时间翻译了一篇相关的网络文章.链接如下: ITPuber:Luise ...

  8. MySQL的前缀索引及Oracle的类似实现

    MySQL有一个很有意思的索引类型,叫做前缀索引,它可以给某个文本字段的前面部分单独做索引,从而降低索引的大小. 其实,Oracle也有类似的实现,对于文本,它可以通过substr的函数索引,实现同样 ...

  9. c oracle 多条语句,Oracle 实践:如何编写一条 sql 语句获取数据表的全部索引信息(兼容 Oracle 19c、Oracle 11g)...

    一.引言 部门使用 Oracle 已经有一些时日,最近在工作中遇到了这么一个需求: 我们希望拿到某些数据表的全部索引信息,对索引信息进行检查,检查是否有漏掉没有创建的索引 这个需求,核心的点在于,我需 ...

最新文章

  1. MySQL alter
  2. C++中的yield和fork
  3. webapi同时支持post和get报404错误
  4. CodeForces - 1491E Fib-tree(模拟)
  5. 小程序 | 基于WAMP的新闻网小程序开发(体验全栈式开发微信小程序)
  6. Unity 3D Hierarchy视图
  7. MySQL 按照拼音给中文字段排序
  8. niva mysql_Nivacat for mysql是一种第三方提供的()_学小易找答案
  9. 时间序列研(part11)--EG两步法
  10. postman小技巧-提取变量及设置变量
  11. 学习了pr后的收获_PR学习感悟
  12. word打开很慢解决办法
  13. 孤独者的自我救赎[自我的认知]
  14. Windows10系统添加打印机步骤
  15. 千万别惹程序员,39 个奇葩代码注释...
  16. 2021-05-21 qt程序aas运行失败提示undefined symbol: _Z34QBasicAtomicInt_fetchAndAddOrderedPVii问题
  17. Kafka 实战 (3):kafka安装部署·2
  18. ICPLAZA凭BFT+POS快速“出圈” 打造更繁荣的生态系统
  19. CentOS7安装Oracle数据库的全流程
  20. Python脚本抓取大乐透开奖结果核对定投号码邮件通知

热门文章

  1. CCF NOI1060 雷同检测
  2. POJ NOI MATH-7655 回文数个数
  3. C++ 中的友元(friend)
  4. gemm() 与 gesvd() 到矩阵求逆(inverse)(根据 SVD 分解和矩阵乘法求矩阵的逆)
  5. matlab 常用机器学习算法的实现
  6. pandas  数据规整化 —— 合并、清理与转换
  7. Python Flask Web 第九课 —— flask 扩展小结
  8. 深度学习实践指南(三)—— 参数(超参)及数据集的处理
  9. Python 基础——random模块
  10. keil创建工程没有atmel_如何使用 KEIL 下载 HEX 文件?