为什么我的sqlserver查询600万数据时这么慢

woowindice 2006-09-10 06:59:46
sqlserver2000
所有查询字段都做了索引
有什么办法优化?还是sqlserver2000的问题?
...全文
634 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
yjlhch 2006-09-11
  • 打赏
  • 举报
回复
对查询所有字段重新建立索引
yitangliang 2006-09-11
  • 打赏
  • 举报
回复
看看你提交的SQL语句的执行计划吧!另外,如果存在索引碎片(用DBCC showcontig(tablename)查看),纵然有索引,查询速度也可显著下降!
flashasp 2006-09-11
  • 打赏
  • 举报
回复
索引查询是数据库中重要的记录查询方法,要不要进入索引以及在那些字段上建立索引都要和实际数据库系统的查询要求结合来考虑,下面给出实际中的一些通用的原则:

1. 在经常用作过滤器的字段上建立索引;

2. 在SQL语句中经常进行GROUP BY、ORDER BY的字段上建立索引;

3. 在不同值较少的字段上不必要建立索引,如性别字段;

4. 对于经常存取的列避免建立索引;

5. 用于联接的列(主健/外健)上建立索引;

6. 在经常存取的多个列上建立复合索引,但要注意复合索引的建立顺序要按照使用的频度来确定;

7. 缺省情况下建立的是非簇集索引,但在以下情况下最好考虑簇集索引,如:含有有限数目(不是很少)唯一的列;进行大范围的查询;

充分的利用索引可以减少表扫描I/0的次数,有效的避免对整表的搜索。当然合理的索引要建立在对各种查询的分析和预测中,也取决于DBA的所设计的数据库结构
woowindice 2006-09-11
  • 打赏
  • 举报
回复
3点都不是问题
analysefirst 2006-09-11
  • 打赏
  • 举报
回复
你把服务器的占用内存量调大些,应该会快的。
yuehaiyang 2006-09-10
  • 打赏
  • 举报
回复
其一,并不是索引越多,查询就越快。
其二,查询快慢还和查询语句有关
其三,和机器硬件配置有关

34,587

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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