打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
sql 非聚集索引使用INCLUDE

 上面的索引覆盖所带来的效率提升就像魔术一样,但别着急,正如我通篇强调的一样,everything has price.如果一个索引包含了太多的键的话,也会带来很多副作用。INCLUDE的作用使得非聚集索引中可以包含更多的列,但不作为“键”使用。

    比如:假设我们上面的那个查询需要增加一列,则原来建立的索引无法进行覆盖,从而还需要查找基本表:

    

    但是如果要包含SubTotal这个总金额,则索引显得太宽,因为我们的业务很少根据订单价格作为查询条件,则使用INCLUDE建立索引:

    

    理解INCLUDE包含的列和索引建立的列可以这样理解,把上述建立的含有INCLUDE的非聚集索引想像成:

     

     使用INCLUDE可以减少叶子“键”的大小!

原文:https://www.cnblogs.com/CareySon/archive/2011/12/27/2303508.html

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
SQL Server 非聚集索引的覆盖,连接,交叉和过滤 <第二篇>
SQL Server查询使用键查找时锁申请及释放顺序
(二)何时使用聚集索引或非聚集索引
SQL Server 非聚集索引(如何预先估算其大小空间)
SQL server 2014 内存表特性概述
SQL数据库面试题
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服