为什么我建立了索引之后速度没有明显提升呢?

zq200487731 2013-05-04 11:26:56
表里面大概有3千多万的数据,在BUY_DATE_time上建立了聚集索引,但是我发现查询速度和没见索引的时候差不多,

大家看,两个的系统开销差不多
...全文
622 16 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
Andy-W 2013-05-10
  • 打赏
  • 举报
回复
优化器提示的,缺少索引.....,根据提示再创建个索引看看性能如何。
最爱午夜 2013-05-10
  • 打赏
  • 举报
回复
1、你第一查询的时候是在有索引的情况下,但是第二次查询前,你没有清空缓存,也就是说,数据库有数据缓存在,这个时候,只要T-SQL语句花在cpu上面的时间不多的话,根本看不出两者的性能差别。 2、一次提取的数据太多,怎么比较,况且一个查询数据大于表的10%,扫描比查找性能更好,你这个是有问题的做法,起码试验的操作步骤就有问题。
lg314 2013-05-10
  • 打赏
  • 举报
回复
3000w数据中找出300w的数据建立索引也不会快很多。从index里面找出300w数据,然后要根据这个300w数据到聚集索引里面循环查找,3000w数据的B树查找成本大概是21,如果使用索引的话21*300w=6300w的成本。当然这个计算不是精确的,但也是差不多是这种思路。sql server里面估算出来使用索引比直接扫描慢的话就不会使用索引了。但如果建立的是聚集索引的话就不一样了,聚集索引就少了键值查找的成本。
skyclin 2013-05-09
  • 打赏
  • 举报
回复
一次提取三百万的数据,光是显示及传到客户端显示都花时间。
雪狐 2013-05-08
  • 打赏
  • 举报
回复
没建索引用的是 index seek, 建立索引后用的是 index scan,,理论上没建之前更快。。。 但你返回的结果集太多,300W行,,这个无论如何都不会太快。。。
  • 打赏
  • 举报
回复
你给的好像是评估的计划,看不清楚具体原因,你最好有SET STATISTICS profile ON 来看一下结果 SET STATISTICS profile ON GO T-SQL 然后把结果集完整的贴出来分析。
daiyueqiang2045 2013-05-04
  • 打赏
  • 举报
回复
你后面的语句使用的seek方式这个理论是更快的
daiyueqiang2045 2013-05-04
  • 打赏
  • 举报
回复
你重建索引了吗? 显示指定的表或视图的数据和索引的碎片信息 查看一下你的索引碎片:http://www.cnblogs.com/worfdream/articles/2840582.html 更新统计 再看一下
zq200487731 2013-05-04
  • 打赏
  • 举报
回复
来人帮忙看下啊
专注or全面 2013-05-04
  • 打赏
  • 举报
回复
查询条件查询出来的将近300W了,占整个表的十分之一 走索引查找的话,也不见得一定能提高效率
专注or全面 2013-05-04
  • 打赏
  • 举报
回复
create index indexname on table(buy_date) include(user_id) 建立include 索引试试
zq200487731 2013-05-04
  • 打赏
  • 举报
回复
引用 6 楼 duanzhi1984 的回复:
你的字段的类型是什么,字符还是DATATIME
是datetime的
seusoftware 2013-05-04
  • 打赏
  • 举报
回复
并不是有索引就一定会快,要看索引有没有合理使用。 执行计划是聚集索引扫描,而不是查找,如果你要查的数据基本都集中在2013-01-01 and 2013-02-01,那么sql server可能就会选择去扫描了,所以就会慢。
SQL77 2013-05-04
  • 打赏
  • 举报
回复
3KW的数据.看你两个结果虽然行数不一样.但大致是300W数据.十分之一的数据 建立聚集索引肯定要快很多的.
duanzhi1984 2013-05-04
  • 打赏
  • 举报
回复
你的字段的类型是什么,字符还是DATATIME
  • 打赏
  • 举报
回复
另外你执行获得评估计划的时候,并没有真正的去执行,你是怎么发现性能差不多的? 莫非你是根据评估计划的生成时间?

27,582

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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