SQL Server 2005 扫描计数产生原因分析(2)

  上一次我们分析了两种写法不一样,产生的扫描计数差别很大,一个为3,一个为0,我们先看看后面的sql语句执行计划:

 

 

 

    执行计划解释:

      1,这里有两个合并排序,就是对3个id数据排序,通过合并算法排序(这里为何要用合并排序算法,我们在另一节中讨论)

      2,通过排序后的数据,一次使用嵌套循环取出对应的索引值,一共循环三次。(嵌套循环算法将在另一节中讨论)

      3,通过循环找到索引键值后,数据库也就找到了对应的行RID,这时通过嵌套循环找到行数据。

  

     我们发现这时,索引和行数据查找是分开的。,也就是说找到索引和找到数据是分开的。这时扫描计数为0

     我们还可以使用索引覆盖查找和表扫描,也都有扫描计数

 

   通过上面的例子,总接一下:

       扫描计数:数据库连续完整的找到一部分数据的次数。    

 

     以上是个人观点,如有错误请批评指正,一起学习进步!!!

 

posted @   zping  阅读(2104)  评论(1编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
点击右上角即可分享
微信分享提示