博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SQL中如何避免书签查找
阅读量:5288 次
发布时间:2019-06-14

本文共 631 字,大约阅读时间需要 2 分钟。

1、使用聚集索引对于聚集索引,索引的叶子页面和表的数据页面相同。因此,当读取聚集索引键列的值时,数据引擎可以读取其他列的值而不需要任何导航。例如前面的区间数据查询的操作,SQLServer通过B树结构进行查找是非常快速的。把非聚集索引转换为一个聚集索引说起来很简单。但是,这个例子和大部分可能遇到的情况下,这不可能做到,因为表已经有了一个聚集索引。这个表的聚集索引恰好是主键。必须卸载掉所有的外键约束,卸载并且重建为一个非聚集索引。这不仅要考虑所涉及的工作,还可能严重地影响依赖于现有聚集索引的其他查询。 2、使用覆盖索引例如select id,name frompersontenthousand where id <100我们可以在id,name上面建个组合索引,这样,由于非聚集索引上已经有了需要查询的Id和Name列的数据,所以不在需要书签查找定位到基本表。 3、使用索引连接如果覆盖索引变得非常宽,那么可能要考虑索引连接技术。索引连接技术使用两个或更多索引之间的一个索引交叉来完全覆盖一个查询。因为索引连接技术需要访问多余一个索引,它必须在所有索引连接中使用的索引上执行逻辑读。因此,索引连接需要比覆盖索引更高的逻辑读数量。但是,因为索引连接所用的多个窄索引能够比宽的覆盖索引服务更多的查询。所以索引连接也可以作为避免书签查找的一种技术来考虑。

 

转载于:https://www.cnblogs.com/firstdream/p/8031672.html

你可能感兴趣的文章
Java---容器基础总结
查看>>
清除Windows的DNS缓存
查看>>
发出HTTP请求并获得HTTP响应
查看>>
Eclipse使用Maven创建Dynamic Web Project
查看>>
Raphael实例
查看>>
模拟键盘输入
查看>>
基于插件架构的简单的Winform框架(上)
查看>>
一个很暴力很无奈的数据库随机数列生成问题
查看>>
re、词云
查看>>
WebService完成文件上传下载
查看>>
MFC控件编程之复选框单选框分组框
查看>>
phpcms流程
查看>>
js中typeof的用法汇总
查看>>
Xamarin XAML语言教程使用方法设置进度条进度
查看>>
使用Nginx转发TCP/UDP数据
查看>>
实现基于LNMP的电子商务网站
查看>>
Task与Thread间的区别
查看>>
gcc -S xx
查看>>
SQL:获取语句执行时间2
查看>>
html学习第一天笔记——第六章节
查看>>