大数据量优化查询问题

Kenzson 2014-11-21 02:10:29
对于一张上百万记录的表,如何在10秒内查询出某一个字段的总和(ex: 金额)
...全文
198 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
Tiger_Zhao 2014-11-24
  • 打赏
  • 举报
回复
用我#4的例子啊!
Kenzson 2014-11-22
  • 打赏
  • 举报
回复
引用 8 楼 zhang1struts1yun 的回复:
在字段上加一个非聚集索引,查询的时候只是对这个加了索引的字段进行查询,也就是index, 如果不加 则是对整张表的所有字段都查一遍,所以效率就不那么高了。
那有两个或者三个的该怎么创建索引呢,给个例子
zhang1struts1yun 2014-11-21
  • 打赏
  • 举报
回复
在字段上加一个非聚集索引,查询的时候只是对这个加了索引的字段进行查询,也就是index, 如果不加 则是对整张表的所有字段都查一遍,所以效率就不那么高了。
弘毅致远 2014-11-21
  • 打赏
  • 举报
回复
加适当的index
發糞塗牆 2014-11-21
  • 打赏
  • 举报
回复
加个非聚集索引
Kenzson 2014-11-21
  • 打赏
  • 举报
回复
好的,谢谢各位,我测试下
Tiger_Zhao 2014-11-21
  • 打赏
  • 举报
回复
具有包含性列的索引
CREATE INDEX IX_table1_include_amount
ON table1 (类别)
INCLUDE (金额)
GO

SELECT SUM(金额) FROM table1 WHERE 类别 = ...
Kenzson 2014-11-21
  • 打赏
  • 举报
回复
引用 2 楼 DBA_Huangzj 的回复:
列上加个索引
加什么类型的索引呢?普通索引还是聚集索引
發糞塗牆 2014-11-21
  • 打赏
  • 举报
回复
列上加个索引
Kenzson 2014-11-21
  • 打赏
  • 举报
回复
用sum已测试过,效率不是很高,一般在半分钟到一分钟左右,有没有比这个要好的方式呢

34,593

社区成员

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

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