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只有一个,则可以更快的得到需要的结果。

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

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

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • docker deepin_docker套件用法

    docker deepin_docker套件用法卸载1.卸载docker-cesudoapt-getremovedockerdocker-ce2.查看docker的文件位置whereisdocker结果如下:docker:/usr/bin/docker/etc/docker/usr/libexec/docker/usr/share/man/man1/docker.1.gz3.删除docker文件使用rm-rf命令删除这些文件如:sudorm-rf/usr/bin/docker删除后,可以使用dock

    2025年10月2日
    3
  • pycharm需要安装哪些包_用于引入包的关键字

    pycharm需要安装哪些包_用于引入包的关键字在学习python的时候,被推荐了使用PyCharm这款IDE,但是在import包的时候却发生了问题–无法引入,但是明明通过了pip进行模块的加载,百度之后,了解到,在这款IDE中,要导入包,需要手动进行引入。如下图所示首先在file中找到settings顺带一下,如果有的同学是第一次接触这款IDE,可能对与皮肤颜色不太了解,其实也是在settings中进行设置的,而且该公司旗下的其他产品如…

    2022年8月28日
    3
  • vCenter用户和组管理

    vCenter用户和组管理

    2021年8月30日
    89
  • Pycharm-用鼠标滚轮放大缩小字体大小[通俗易懂]

    Pycharm-用鼠标滚轮放大缩小字体大小[通俗易懂]1,pycharm字体放大设置:①,File—>setting—>Keymap—>在搜寻框中输入:increase—>IncreaseFontSize(双击)—>在弹出的对话框中选择AddMouseShortcut②,在弹出的对话框中按住ctrl键,鼠标滚轮向上滑动后点击OK。2,Pycharm字体缩小设置:①,File—>setting—>Keymap—>在搜寻框中输入:decrease—>DecreaseFontSize(双击)—>在弹出的对

    2025年7月6日
    1
  • pycharm激活码2022(JetBrains全家桶)「建议收藏」

    (pycharm激活码2022)这是一篇idea技术相关文章,由全栈君为大家提供,主要知识点是关于2021JetBrains全家桶永久激活码的内容IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.htmlBI7JCUH1TG-eyJsa…

    2022年3月22日
    247
  • java怎么运行_怎样启动JAVA?「建议收藏」

    java怎么运行_怎样启动JAVA?「建议收藏」展开全部在Android中启动Java程序其实有很多种方式,现总结如下一、在Android应用程序中e69da5e887aa62616964757a686964616f31333363373732发送Intent启动Android应用程序这个方式最简单,最常用。在此不在累述。关于Intent的更多内容请阅读《Intent技术简介》二、在shell控制台通过am命令发送Intent来启动Androi…

    2022年7月7日
    42

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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