SQL开发中容易忽视的一些小地方(五)
2009-01-15 10:19:30 来源:WEB开发网核心提示: 2:当使用聚集索引扫描时的IO情况(条件中未出现聚集索引列):表 'student'.扫描计数 3,逻辑读取 8835 次,物理读取 0 次,预读 0 次,lob 逻辑读取 0 次,lob 物理读取 0 次,lob 预读 0 次.3:当使用聚集索引扫描时的IO情况(条件中出
2:当使用聚集索引扫描时的IO情况(条件中未出现聚集索引列):表 'student'.扫描计数 3,逻辑读取 8835 次,物理读取 0 次,预读 0 次,lob 逻辑读取 0 次,lob 物理读取 0 次,lob 预读 0 次.
3:当使用聚集索引扫描时的IO情况(条件中出现聚集索引列) :表 'student'.扫描计数 1,逻辑读取 3 次,物理读取 0 次,预读 0 次,lob 逻辑读取 0 次,lob 物理读取 0 次,lob 预读 0 次.
结论:
1:在没有正确的索引情况下,会增加表的扫描次数.
2:数据在查询时会先找匹配的索引.
1):如果在条件列中出现聚集索引列,则无论输出列是否建立索引都会按聚集索引查找(有聚集索引 ).
2):如果在条件列中没有出现聚集索引列,则查找匹配的非聚集索引,如果有匹配的索引则按相应索引查询,否则再扫描聚集索引(有聚集索引 ).
3):查找匹配的非聚集索引(没有聚集索引 ).
本文总结:
我只是简单的写了些关于索引使用的DEMO,在实际开发中要按实际情况来分析,有时并不能完全使用上索引,但是可以让查询产生最少的IO读取以及表扫描次数.
相关文章:
SQL开发中容易忽视的一些小地方
SQL开发中容易忽视的一些小地方(二)
SQL开发中容易忽视的一些小地方( 三)
SQL开发中容易忽视的一些小地方(四)
SQL开发中容易忽视的一些小地方(五)
- ››sql server自动生成批量执行SQL脚本的批处理
- ››sql server 2008亿万数据性能优化
- ››SQL Server 2008清空数据库日志方法
- ››sqlserver安装和简单的使用
- ››SQL Sever 2008 R2 数据库管理
- ››SQL SERVER无法安装成功,sqlstp.log文件提示[未发...
- ››Sql Server中通过父记录查找出所有关联的子记录
- ››SqlServer触发器、存储过程和函数
- ››SQL Server 中的事务(含义,属性,管理)
- ››Sqlite数据库插入和读取图片数据
- ››开发Android 日历教程
- ››Sql server 2005拒绝了对对象 'xx表' (数...
更多精彩
赞助商链接