2012-02-27 75 views
1

当用户在网站上出现问题时,为数据库添加点数。 我想要做的是获得过去7天的积分并加起来。如何在特定日期之间从MySQL数据库获取数据

在我的数据库我有它保存的,如:PointsID,PointsUserID,PointsTotal,PointsDate

我想我只是需要弄清楚的最后日期在数据库中,然后减去7天,然后之间获取值他们。一旦我返回了值,他们将需要总结,所以我可以输出一个数字。

感谢,Bonxy

+0

您是否需要从当前日期或过去7天内得到任何点数的最近7天内的积分? – JScoobyCed 2012-02-27 01:19:35

+0

请告诉我们你到目前为止所拥有的。 – 2012-02-27 01:19:58

+0

你的日期类型是什么?你使用Unix或MySQL的日期? – tftd 2012-02-27 01:22:07

回答

1
SELECT SUM(PointsTotal) FROM TableName WHERE PointsUserID = 'IdInQuestion' AND PointsDate >= Date_Sub(Now(), Interval 7 Day) 

在您储存你想转换日期为Unix的时间戳值(AKA PHP的日期值)事件两个值中的一个在适当的方向上。

例如,您可以通过将PointsDate替换为FROM_UNIXTIME(PointsDate)来将该字段转换为MySQL日期时间值。您也可以通过其他方式将DATE_SUB()的结果转换为UNIX_TIMESTAMP()。两者应该有同样的结果。

0

喜欢的东西

Select * From MyTable Where MyDate Between Date_Sub(Now(), Interval 7 Day) and Now() 
相关问题