日期:2014-05-18  浏览次数:20399 次

这样的表怎样建立索引,如何排序?
我有一个用户信息表:
UserInfo 字段有:username, .., todayvisitcount, visitcount
其中 todayvisitcount, visitcount 是用来分别记录该用户当天访问量与总访问量的。
我在一个页面上要按todayvisitcount, visitcount 这两个字段联合排序,取出最火的10个用户,需要使用order by。
问题是:我能在todayvisitcount, visitcount 上建立索引吗?因为这两个字段在每个用户访问时都会加1,这么频繁改动好像不适合建立索引,但如果不建立索引一排序就要全表(很大的表)检索低效率,高手们,求教!!
使用数据库(SQL SERVER2000)


------解决方案--------------------
对todayvisitcount, visitcount建立索引和对这两字段数据的频繁的改动没有影响.

如果是频繁的查询这两字段,到真是要对他们建立索引.
------解决方案--------------------
可以单独为todayvisitcount, visitcount 字段建立非聚集索引
------解决方案--------------------
为todayvisitcount, visitcount 字段建立非聚集索引
------解决方案--------------------
据我所知:对字段建立索引后,每次更新该字段的内容,都要重建索引,这会影响更新效率,以上的表就是频繁更新的,但我不知道会有多大影响。

-----------------------------------

如果更新比较多的话相应的填充因子可以设小一点,每个索引页预留一部分空间,这样对更新的影响会很小