类型:电子教程大小:8.5M语言:中文评分:8.3标签:立即下载。在数据库存的优化设计中,经常会提到指标。本文将详细讲解在SQL SERVER下建立索引的技巧和一些注意事项,以便大家更直观地了解数据库的结构。
当数据量小,查询量不大时,我们往往会忽略索引的存在。
总结优化如下:1。主键是聚集索引。2.只要建立了索引,查询速度就能显著提高。3.所有需要提高查询速度的字段都被添加到聚集索引中,以提高查询速度。(4)使用其他书籍没有的索引的经验总结。1.使用聚合索引比使用非聚合索引的主键更快。2.使用聚合索引比使用常规主键更快。尤其是在数据量较小的情况下。3.使用聚合索引中的时间段,无论使用多少个聚合索引,搜索时间都将与整个数据表中的数据百分比成比例减少。4.日期列不会因为分钟和秒钟的输入而降低查询速度。(5)其他注意事项。1.不要索引常用的小表格。2.不要选择社会安全号码(SSN)或身份证号码作为密钥。3.不要使用用户的密钥。
第二,改进SQL语句
1.Like语句是否属于SARG取决于使用的通配符类型。2.或将导致全表扫描。3.由非运算符和函数引起的不满足SARG形式的语句。4.in的效果和OR5相当,尽量少用NOT 6,exists和IN的执行效率是一样的。7.使用函数charindex()与前面带有通配符%的LIKE相同。8.联合并不比或更有效率。9.字段提取要遵循“需要多少,提取多少”的原则,避免“选择*”。10.计数(*)不慢于计数(字段)。11.order by是按聚集索引列排序的最有效方法。12.高效TOP
(1)简单理解索引结构其实可以把索引理解为一种特殊的目录。Microsoft SQL SERVER提供了两种索引:聚集索引(也称为聚集索引、聚集索引)和非聚集索引(也称为非聚集索引、非聚集索引)。下面,我们用例子来说明聚集索引和非聚集索引的区别:实际上,我们的中文词典本身的主体就是聚集索引。比如我们要查“an”字,自然会打开字典的前几页,因为“An”的拼音是“An”,按拼音排序的汉字字典以英文字母“A”开头,以“Z”结尾,所以“An”字自然排在字典的前面。如果你翻遍了所有以“a”开头的部分,仍然找不到这个词,说明你的字典里没有这个词;同样,如果你查“张”字,你也会翻到字典的最后一部分,因为“张”的拼音是“张”。换句话说,字典本身的主体部分就是一个目录,所以不需要查找其他目录就能找到自己需要的内容。我们称这类内容本身为按照一定规则排列的目录“聚簇索引”。如果你知道一个单词,你可以很快从自我词典中找到它。然而,你可能会遇到一个你不知道的单词,不知道它的发音。这个时候按照刚才的方法是找不到你要找的单词的,但是你需要根据偏旁找到你要找的单词,然后直接翻到一页根据这个单词后面的页码找到你要找的单词。但是,结合部首目录和字典对你找到的单词进行排序,并不是真正的文本排序方法。比如查“张”字,查偏旁部首后可以看到字典中“张”的页码是672页,“迟”字在上面,但“张”下面的页码是63页显然,这些字并不是真正位于“张”字的上下。你现在看到的连续词“池、张、弩”,其实就是它们在非聚集索引中的排序,是字典体中的词在非聚集索引中的映射。我们可以用这种方法找到你需要的单词,但是需要两个过程,首先在目录中找到结果,然后翻到你需要的页码。我们称这种目录纯目录纯文本的排序模式为“非聚集索引”。通过上面的例子,我们可以了解什么是“聚集索引”和“非聚集索引”。进一步扩展,我们很容易理解每个表只能有一个聚集索引,因为目录只能用一种方法排序。