在PHP / MySQL中更新视图计数的最佳方法

时间:2013-06-10 21:00:29

标签: php mysql count

我的客户有一个表格,可以跟踪每篇文章的总观看次数。问题是他们希望我将视图数量分解为几天。我可以很容易地查询数据库并获取视图计数,但我不确定如何获取每天的查看次数(当然每篇文章)。

如果我不清楚(通常是我被告知的情况)我在表格中有一个字段,收集每篇文章的所有观点而不考虑日期或时间。如果查看了该文章,则该行加一。从现在起一年后查看记录,查看次数显示为2,000。就是这样。

我想要做的是捕获每篇文章的每日视图计数并将其插入到自己的表中但我不能影响所述视图计数字段/记录。这样,客户端可以查看每篇文章的每日视图计数。关于最佳方法的任何想法?

我希望一切都有意义!!

3 个答案:

答案 0 :(得分:2)

如果我是你,我会为视图创建一个新表并在每个视图上插入一条新记录,何时查看,然后我会选择今天所有的视图并计算它们,这会给我一个数字今天看过这篇文章的时间仍然保持总计数

答案 1 :(得分:0)

类似的东西:

INSERT INTO `daily_views` SET `views` = 
    SELECT COUNT(*) FROM `views_table` 
    WHERE `date` BETWEEN '2013-06-10' 
    AND '2013-06-11'
    AND `post_id` = 1
, `post_id` = 1;

答案 2 :(得分:0)

从新年前夜开始。每天计算并将其存储在一个单独的表中。在第二天用当前计数减去当前计数 - 这是昨天的计数 - 将差异与日期一起存储在另一个表中。那么,清楚与否?