Php 如何每天、每周、每月或永远检索最佳投票文章?

Php 如何每天、每周、每月或永远检索最佳投票文章?,php,sql,calendar,vote,Php,Sql,Calendar,Vote,我有一个投票系统,其实很简单 投票号、用户号、文章号 我现在需要能够每天、每周、每月、每年、永远地获取最佳投票文章 我想我可以添加一个DATETIME列,然后使用mysql函数来检索vote-BETWEEN或其他内容,并使用DATE INTERVAL和其他日期操作 我还认为我可以将“一年中的一天”、“一年中的一周”、“一年中的一个月”、“一年”反规范化并存储在性能列中,这样我就可以轻松地获取某一天或某个月的投票 另外,我想知道我是否需要从日历的角度来看,这意味着“每月”可能不是从“1到31”,而

我有一个投票系统,其实很简单

投票号、用户号、文章号

我现在需要能够每天、每周、每月、每年、永远地获取最佳投票文章

我想我可以添加一个DATETIME列,然后使用mysql函数来检索vote-BETWEEN或其他内容,并使用DATE INTERVAL和其他日期操作

我还认为我可以将“一年中的一天”、“一年中的一周”、“一年中的一个月”、“一年”反规范化并存储在性能列中,这样我就可以轻松地获取某一天或某个月的投票

另外,我想知道我是否需要从日历的角度来看,这意味着“每月”可能不是从“1到31”,而是从“12到12”跨越两个月


有什么想法/反馈吗?

如果表示数据的最小单位是一天,那么我将从日期列和SQL查询开始,以确定每个时间间隔的投票数

如果您的数据量不够好,您可以对其进行优化。除了添加列,您还可以使用不同的表结构来存储每个期间的总计。然后,将对插入项执行计算,而不对每个选择项执行计算

关于日历月份,这取决于系统的要求


无论您使用什么选项,请务必考虑用户和服务器的不同时区的影响! 你的标签上写着PHP,在这里实现这个功能很简单,但听起来你在寻找一个MYSQL解决方案。听起来你把问题复杂化了。每天结束时,计算出新的总数,然后烘烤它们。也就是说,周一00:01,计算周日表现最好的时间,保存数据,计算到周日的7天,烘焙那个,1个月到周日,烘焙那个,1年等等(烘焙:存储,缓存)不要将日期、月份和年份分开——那将是痛苦的。