2012-02-27 7 views
1

ユーザーがサイトで何かをしたときに、データベースにポイントを追加する。 私がしたいのは、過去7日間のポイントを集めて合計することです。私はちょうどマイナス7日には、その後の間から値を取得し、その後、DBに最新の日付を把握する必要があると思いPointsID、PointsUserID、PointsTotal、PointsDate特定の日付の間にMySQL DBからデータを取得する方法

:私のDBで

私が持っている、それは次のように保存しましたそれら。いったん値を返すと、それらの値を合計して1つの数値を出力する必要があります。

おかげで、Bonxy

+0

現在の日付または過去7日間のうち、過去7日間のポイントを取得する必要がありますか? – JScoobyCed

+0

あなたがこれまで持っているものを見せてください。 –

+0

あなたの日付の種類は何ですか?あなたはUNIXの時刻かmysqlの日付を使っていますか? – tftd

答えて

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

ような何か適切な方向の2つの値の1つ。

たとえば、PointsDateFROM_UNIXTIME(PointsDate)に置き換えて、フィールドをMySQLの日時の値に変換することができます。あなたはまた、別の方法を行ってDATE_SUB()の結果をUNIX_TIMESTAMP()にすべてラップして変換することもできます。どちらも同じ結果が得られるはずです。

0

あなたが変換したいあなたは、UNIXタイムスタンプ値(AKA PHPの日付値)として日付を格納している場合に
Select * From MyTable Where MyDate Between Date_Sub(Now(), Interval 7 Day) and Now() 
関連する問題