当用户在现场进行操作时,我会向数据库添加点数。 我想做的就是获取过去 7 天的积分并将它们加总。
在我的数据库中,我将其保存为:PointsID、PointsUserID、PointsTotal、PointsDate
我想我只需要找出数据库中的最新日期,然后减去 7 天,然后从它们之间获取值。返回值后,需要将它们相加,以便输出一个数字。
谢谢,邦妮
最佳答案
SELECT SUM(PointsTotal) FROM TableName WHERE PointsUserID = 'IdInQuestion' AND PointsDate >= Date_Sub(Now(), Interval 7 Day)
如果您将日期存储为 unix 时间戳值(也称为 PHP 日期值),您可能希望将两个值之一转换为适当的方向。
例如,您可以通过将 PointsDate
替换为 FROM_UNIXTIME(PointsDate)
来将该字段转换为 MySQL 日期时间值。您也可以采用另一种方式,通过将 DATE_SUB()
的结果全部包装在 UNIX_TIMESTAMP()
中来转换它。两者应该有相同的结果。
关于php - 如何在特定日期之间从 MySQL DB 获取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9458896/