sql server中使用组合索引须要注意的地方

一、索引应该建在选择性高的字段上(键值惟一的记录数/总记录条数),选择性越高索引的效果越好、价值越大,惟一索引的选择性最高;html


二、组合索引中字段的顺序,选择性越高的字段排在最前面;若是把低选择性的列放在最左端,可能会形成没法使用该索引的状况。sql


三、where条件中包含两个选择性高的字段时,能够考虑分别建立索引,引擎会同时使用两个索引(在OR条件下,应该说必须分开建索引);性能


四、不要重复建立彼此有包含关系的索引,如index1(a,b,c) 、index2(a,b)、index3(a);优化


五、组合索引的字段不要过多,若是超过4个字段,通常须要考虑拆分红多个单列索引或更为简单的组合索引;server


六、组合索引一般在查询语句中的WHERE条件使用了组合索引最左边的列时会最有用。htm


七、组合索引增长了更新数据成本,增长了存储索引的成本。另外,在dbms查询时,优化方案中不必定会选择到他(有可能直接选择了单键查询)索引


八、不要滥用索引。由于过多的索引不单单会增长物理存储的开销,对于插入、删除、更新操做也会增长处理上的开销,并且会增长优化器在选择索引时的计算代价。get


九、太多的索引与不充分、不正确的索引对性能都是毫无益处的。数据


十、索引的创建必须慎重,对每一个索引的必要性都应该通过仔细分析,要有创建的依据。查询

 

参考资料:sql server组合索引    http://www.studyofnet.com/news/954.html

相关文章
相关标签/搜索