Oracle联合索引

Oracle联合索引Oracle联合索引分类:Oracle2012-12-0809:352110人阅读评论(0)收藏举报我现在用的是oracle9i1.一个表建立多少个索引比较合适?比如说不大于5个这个没有定论,楼主要综合查询效率和dml效率自己确定,索引可以加快select的查询速度,但也会降低delete,insert和update等dml语句的执行速度。2.联…

大家好,又见面了,我是你们的朋友全栈君。Oracle 联合索引

分类: Oracle 2012-12-08 09:35 2110人阅读 评论(0) 收藏 举报

我现在用的是oracle 9i

1.一个表建立多少个索引比较合适?比如说不大于5个

这个没有定论,楼主要综合查询效率和dml效率自己确定,索引可以加快select的查询速度,但也会降低delete,insert和update等dml语句的执行速度。

2.联合索引比单索引的效率高么?

如果联合索引中的多个字段都在where谓词中出现了,则联合索引效率比单列索引高,因为通过多个条件可以从索引中过滤得到更少的记录条数,也就减少了需要回表扫描的次数,甚至可以直接在联合索引中得到所查的所有结果,则不再需要回表。

但是由于多列的联合索引肯定要比单列索引大,也就是说同样的索引需要存储的物理块要多于单列索引,所以,如果查询中只出现了联合索引中的某一列,则其效率不如单列索引。

3.compress 这个压缩 ,能起到什么作用?

没研究过

4.上网上查资料时,都说oracle使用联合索引需要前导列,这个和版本有关系吗?

前导列跟版本没有关系。

前导列的概念是这样的,如果建立了f1,f2上的联合索引,则在查询时必须要用到f1,也就是所谓的前导列,该索引才会有效,因为索引是按照前导列排序的,如果where条件谓词中没有前导列,则需要执行索引扫描才能得到想要的结果,这种情况下其效率往往较差。

5.如果不需要前导列的话,reverse 这个反转 又起到什么作用呢?

鉴于前面描述的前导列的概念,我们考虑如下表存储table(f1,f2);

aa 1

ab 2

ac 3

ad 4

ae 5

如果我们对表table建立f1上的普通索引,由于按照f1进行排序,所以针对where f1=ad则需要遍历所有的a开始的索引,而如果对f1建立reverse索引,则由于da只有一个,则可以更快的得到需要的结果。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/141014.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 道具库简介_保鲜库简介

    道具库简介_保鲜库简介作为C++标准不可缺少的一部分,STL应该是渗透在C++程序的角角落落里的。STL不是实验室里的宠儿,也不是程序员桌上的摆设,她的激动人心并非昙花一现。本教程旨在传播和普及STL的基础知识,若能借此机会为STL的推广做些力所能及的事情,到也是件让人愉快的事情。   初识STL:解答一些疑问   1.1一个最关心的问题:什么是STL   “什么是STL?”,假如你对STL还

    2022年10月16日
  • elasticsearch集群搭建的过程_elastic公司

    elasticsearch集群搭建的过程_elastic公司elasticsearch集群搭建(Windows)1、下载es:https://www.elastic.co/cn/downloads/past-releases#elasticsearch进入页面,选择版本,选择windows版本2、解压下载的es,拷贝3份(搭建几个节点就复制几分)3、修改配置文件注意配置文件key:value冒号之后必须有个空格,否则启动报…

    2022年10月13日
  • fprintf函数用法_c语言fgets函数用法

    fprintf函数用法_c语言fgets函数用法fprintf()函数与fscanf()函数的作用于prinf()和scanf()的作用类似,都是格式化读写函数。只有一点不同:fprintf和fscanf函数的读写对象不是终端而是磁盘文件。他们的一般调用方式为:fprintf(文件指针,格式字符串,输出列表);fscanf(文件指针,格式字符串,输入列表);fprintf(fp,”%d,%6.2f”,i,t);作用:输出整型变量

    2022年10月10日
  • Lighttpd 插件mod_h264 streaming (mp4)安装

    Lighttpd 插件mod_h264 streaming (mp4)安装

  • notepad++编译C++

    notepad++编译C++

  • zTree实现地市县三级级联Action类

    zTree实现地市县三级级联Action类

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号