• SQL Server执行计划的理解


    详细看:http://www.cnblogs.com/kissdodog/p/3160560.html

     自己总结:

    扫描Scan:逐行遍历数据。

    查找Seek:根据查询条件,定位到索引的局部位置,然后再开始查找

    聚集索引表:含有聚集索引(clustered index)

    堆表:不含聚集索引的表。 
    注意:仅含有非聚集索引(Nonclustered index),而没有聚集索引(clustered index)的表是堆表

    数据访问操作会有以下情况:

    1、表扫描Table Scan;(无索引的表为堆表select * from students)

    2、聚集索引扫描 Clustered Index Scan;(在堆表上建立聚集索引,即为聚集索引表。但聚集索引字段不为 谓词(where条件) 时,引起该扫描(聚集表的数据存在于聚集索引的叶级节点。因此,聚集扫描与表扫描其实差别不大) select * from students where Name='Jerry' (Clustered_Index_ID))

    3、聚集索引查找Clustered Index Seek;(聚集索表,且谓词(where条件)为聚集索引字段,查找指定范围 select * from students where ID=5 (Clustered_Index_ID))

    4、索引扫描NonClustered Index Scan(非聚集索引能够覆盖所需的数据 select Name from students (NonClustered_Index_Name))

    5、书签查找;(先通过谓词进行索引查找,在根据键查找或对查找获取select的其他字段数据 select * from students where name='jerry'  先进行NonClustered_Index_Name查找来定位,再Clustered_Index_ID键查找来获取select字段值)

  • 相关阅读:
    二分和三分
    windows对拍及其应用
    RMQ与st表
    图论最短路
    图论最小生成树
    贪心问题
    [转载]图论500题
    第二次重建博客。。
    二分和三分题
    树状数组
  • 原文地址:https://www.cnblogs.com/jhf57101/p/6021806.html
Copyright © 2020-2023  润新知