关于语句效率比较

xjchen 2010-05-10 01:34:41
执行两条SQL语句,一样的语句,从两个相同结构的表,一个表数据大,一个数据量小
用查询分析器执行 两个语句IO比较差别不大
表 'info_buy2'。扫描计数 1,逻辑读取 254 次,物理读取 0 次,预读 0 次,lob 逻辑读取 0 次,lob 物理读取 0 次,lob 预读 0 次。
表 'info_buy'。扫描计数 1,逻辑读取 252 次,物理读取 0 次,预读 0 次,lob 逻辑读取 0 次,lob 物理读取 0 次,lob 预读 0 次。

但看执行计划 上一条查询开销 12%,下面一条88% 怎么会相差怎么大?




...全文
85 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
SQL77 2010-05-14
  • 打赏
  • 举报
回复
成本不仅仅是I/O来确定的
zhoujk 2010-05-14
  • 打赏
  • 举报
回复
从一页书中找一句话和从1本书中找同样一句话的区别
htl258_Tony 2010-05-10
  • 打赏
  • 举报
回复
先比较一下两个表的索引是否一样
亮剑_ 2010-05-10
  • 打赏
  • 举报
回复
呵呵
数据量大,查询当然会慢一些
黄_瓜 2010-05-10
  • 打赏
  • 举报
回复
1、相同的语句,相同的表结构
数据量不同,查询开销必然不同了呀
2、结果一样,但是筛选的容器不一样呀,
就好比在一幢楼里找一个人和在一个两幢楼里找到这个人那个更容易些?
无语中V5 2010-05-10
  • 打赏
  • 举报
回复
有可能,建立了索引的表查询的效率很高
喜-喜 2010-05-10
  • 打赏
  • 举报
回复
[Quote=引用楼主 xjchen 的回复:]
执行两条SQL语句,一样的语句,从两个相同结构的表,一个表数据大,一个数据量小
用查询分析器执行 两个语句IO比较差别不大
表 'info_buy2'。扫描计数 1,逻辑读取 254 次,物理读取 0 次,预读 0 次,lob 逻辑读取 0 次,lob 物理读取 0 次,lob 预读 0 次。
表 'info_buy'。扫描计数 1,逻辑读取 252 次,物理读取 0 次,预读 0 次,l……
[/Quote]

查询语句一样,执行效率差别较大!

是不是第一个表里建了索引,而第二个没有呢!你说的表结构相同,不会是名字不同、数据量不同,其他的一模一样吧??
zhoujk 2010-05-10
  • 打赏
  • 举报
回复
执行的语句是通过程序拼接或者是在存储过程中?
xjchen 2010-05-10
  • 打赏
  • 举报
回复
select count(*) from info_buy2 where enddate>'2010-4-1'
select count(*) from info_buy where enddate>'2010-4-1'

两条语句所取出的记录结果一样
htl258_Tony 2010-05-10
  • 打赏
  • 举报
回复
没看到语句,顶一个,睡觉

22,207

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧