建立时间索引后,按照时间排序来获得列表的查询,速度增快了不少

一个论坛中搜评论列表
没创建时间索引前: 总共   其中排序 取行
    0.0617     0.0381  0.0235 使用了聚集索引
创建索引后: 0.00699  0.00036  0.00663 使用了普通索引

全表搜评论列表
创建索引前 0.222  0.119539 0.103411使用了聚集索引
创建索引后: 0.00681  0.000349 0.006462使用了普通索引

具体一个论坛一个帖子全部回复列表
创建索引前 0.0160  0.11956  0.00409 使用了聚集索引
创建索引后: 0.0132  0.000924 0.0123  使用了普通索引

整体结论,建立了时间索引后,整个根据时间排序获得评论的速度增加了,当搜索的范围越小,
速度增加得越明显,当搜索到具体某一个帖子时,差异变小,但始终建立时间索引会更快.

另外发现,当你另外建立了时间索引,数据库会自动优化判断选择使用聚集索引还是普通的时间索引. 

使用索引的几点原则:
1、对小的数据表,使用索引并不能提高任何检索性能,因此不需对其创建索引
2、当用户要检索的字段的数据包含有很多数值或很多空值(null)时,为该字段创建索引,会大大提高检索效率。
3、当用户查询表中的数据时,如果查询结果包含的数据(行)较少,一般少于数据总数的25%时,使用索引会显著提高查询效率。反之,如果用户的查询操作,返回结果总是包含大量数据,那么索引的用处不大。
4、索引列在WHERE子句中应频繁使用。例如,在学生姓名字段上建了索引,但实际查询中并不是经常用姓名作为查询条件,该索引就没有发生作用。
5、先装数据,后建索引。对于大多数的表,总有一批初始数据需要装入。该原则是说,建立表后,先将这些初始数据装入表,然后再建索引,这样可以加快初始数据的录入。如果建表后就建索引,那么在输入初始数据时,每插入一个记录都要维护一次索引。当然,对于索引来说,早建和晚建都是允许的。
6、索引提交了数据检索的速度,但也降低了数据更新的速度。如果要对表中的数据进行大量更新时,最好先销毁索引,等数据更新完毕再创建索引,这样会提高效率。
7、索引要占用数据库空间。在设计数据库时,要把需要的索引空间考虑在内。
8、尽量把表和它的索引存放在不同的磁盘上,这样会提高查询速度。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值