我有一个用php + mysql制作的在线高分,但它目前显示的是所有时间的高分,我想要添加每日/每周/每月,我想知道什么是最好的方式todo?
我目前的想法是添加3个新表,然后将数据插入到每个表中,然后使用cron在适当的时间运行以从每个表中删除数据。
有没有更好的方法可以做到这一点?
另一件事,我想拥有它所以页面将是highscores.php?t =所有t =每日等等。我将如何使页面根据该值更改查询?
感谢。
答案 0 :(得分:4)
使用一个表并添加一个包含高分日期的列。然后每个时间跨度有三个不同的查询,例如
SELECT ... FROM highscores WHERE date>"05-12-2011";
如果您想拥有通用版本而无需固定日期,请使用以下版本:
SELECT ...
FROM highscores
WHERE date >= curdate() - INTERVAL DAYOFWEEK(curdate())+6 DAY;