一个相册系统中,统计一段时间内图片被观看次数的有关问题
一个相册系统中,统计一段时间内图片被观看次数的问题
有这样一个图片系统,需要统计一段时间内(一周,一个月,或者任意时间段内)图片被观看的次数。比如,需要统计7天内被观看次数最多的图片,(注意不是7天内新上传图片中被观看次数最多的图片)。
我现在的做法是,
表photo,字段
photo_id //id
daily_view //当天该photo被观看的次数
表photo_stats,字段
photo_id
day // 统计时间
view //观看次数
每天晚上12点由后台程序根据photo表中的daily_view字段的值,和当天的日期,在photo_stats表中增加一条记录,day就是当天的日期,view为当天该photo被观看的次数,然后置photo.daily_view=0
这样做的缺点是每天都会往photo_stats表中增加许多记录,如果查询时间段非常长的话,效率也不高,请问大家有什么好的方法可以实现上述功能?