读文心得:应用索引技术心得
2005-08-25 19:32
253 查看
新看了《MSDN精选》05年第4期,发现其中的《应用索引技术优化SQL语句》一文写的不错,推荐大家阅读。其中对sql server 2000中的索引的使用,执行情况等做了较全面的分析,下面总结归纳其中的重要几点。
1 逻辑读问题。创建索引尽量要减少语句的logic reads.logic reads是指语句执行时需要访问单位为8K的数据页总数,logic reads越少,其需要的内存和CIP时间越少,执行速度越快。
在执行sql语句前,可以用set statistics io命令看到起逻辑读的次数。
2 对出现在where子句中的字段加索引,尽可能减少TABLE SCAN(全表扫描),使其变为index scan.可以
用set statistics profile来看到执行SQL语句的计划,知道是否是table scan或是index scan.
3 组合索引
比如select 学生姓名,入学时间 from xxx where 入学时间>='20050601' and 入学时间<='20051201' and 年龄>24
可以在入学时间和年龄上建立一个组合索引,组合的顺序为(入学时间,年龄),
另外,尽量不要选择那些唯一性很低的字段,比如,在性别字段上建立索引没多大意义
4 覆盖索引。覆盖索引能是语句不需要访问表仅访问索引就能得到所要的数据。当在SQL语句执行计划中,如果发现有bookmark lookup的话,就表示为访问一行数据,起码要两次IO,一次访问索引,一次访问基本表。要创建覆盖索引,必须包含select 子句和where子句出现的所有字段,where字段在前,select字段在后
create nonclustered index idx_covered on xxx(入学时间,年龄,学生姓名)
对那些非常唯一的字段如主键和外键,经常出现在group by,order by等字段应创建索引
5 尽量不要对where语句中的字段值直接使用各类函数表达式,要尽可能把函数或表达式放在操作符的右边。
1 逻辑读问题。创建索引尽量要减少语句的logic reads.logic reads是指语句执行时需要访问单位为8K的数据页总数,logic reads越少,其需要的内存和CIP时间越少,执行速度越快。
在执行sql语句前,可以用set statistics io命令看到起逻辑读的次数。
2 对出现在where子句中的字段加索引,尽可能减少TABLE SCAN(全表扫描),使其变为index scan.可以
用set statistics profile来看到执行SQL语句的计划,知道是否是table scan或是index scan.
3 组合索引
比如select 学生姓名,入学时间 from xxx where 入学时间>='20050601' and 入学时间<='20051201' and 年龄>24
可以在入学时间和年龄上建立一个组合索引,组合的顺序为(入学时间,年龄),
另外,尽量不要选择那些唯一性很低的字段,比如,在性别字段上建立索引没多大意义
4 覆盖索引。覆盖索引能是语句不需要访问表仅访问索引就能得到所要的数据。当在SQL语句执行计划中,如果发现有bookmark lookup的话,就表示为访问一行数据,起码要两次IO,一次访问索引,一次访问基本表。要创建覆盖索引,必须包含select 子句和where子句出现的所有字段,where字段在前,select字段在后
create nonclustered index idx_covered on xxx(入学时间,年龄,学生姓名)
对那些非常唯一的字段如主键和外键,经常出现在group by,order by等字段应创建索引
5 尽量不要对where语句中的字段值直接使用各类函数表达式,要尽可能把函数或表达式放在操作符的右边。
相关文章推荐
- 读文心得:应用索引技术心得
- Oracle技术之常数复合索引应用案例
- SQL Server 2005全文检索技术在网站上的应用实录 索引
- 应用索引技术优化SQL 语句(Part 2)
- 应用索引技术优化SQL 语句(Part 3)
- 大型的LBS应用地理位置索引技术
- 应用索引技术优化SQL 语句(转)
- 应用索引技术优化SQL 语句(Part 1)
- 应用索引技术优化SQL 语句(Part 2)
- Oracle技术之常数复合索引应用案例
- JSP中href(url)与sumbit的提交数据方式对比(土地资源项目Javabean技术应用心得)
- 应用索引技术优化SQL 语句(Part 3)
- XML链接及其索引技术应用
- 应用索引技术优化SQL 语句(Part 1)
- 访问控制列表(ACL)技术应用专题索引
- 应用索引技术优化SQL 语句(Part 2)
- 应用索引技术优化SQL 语句(Part 1)
- 8月4日云栖精选夜读:澳门拥抱阿里云:全面应用智能技术_为城市装上“大脑”
- B-树和B+树的应用:数据搜索和数据库索引【转】
- 大索引技术大数据的未来