【发布时间】:2023-03-04 10:39:01
【问题描述】:
关于根据日期的用户浏览量选择“博客文章”时的 SQL 性能问题。
我想记录每个帖子的用户浏览量,我将使用“每日”和“每月”作为参数选择他们中的每个人:
PS:
一天或一个月内浏览次数最多的帖子。
为了记录视图,我创建了一个表格,以便在每次页面加载后插入每个视图的日期。
他们会在需要时按 DAY() 和 MONTH() 选择(计数)它们。
这里的问题是,当表格或需要此信息的用户数量增长时,选择开始变慢,因为行(视图)的数量乘以帖子的数量。
我认为的另一种选择是,为每日记录创建一个表,为每月记录创建另一个表,然后在每个页面加载代码检查所选日期是否存在行,如果行存在,脚本会增加视图计数,如果不计数,则脚本插入视图计数 = 1 的行;
附:
每日观看次数 邮政编号 |意见 |日期
1 | 898 | 2014-07-11
2 |第676章2014-07-11
1 | 333 | 2014-07-10
这样每个帖子每天只能有一行。
还有更好的选择吗?你觉得我的替代方案怎么样?不需要我的建议吗?
【问题讨论】:
标签: mysql sql sql-server performance