0

我有这张图片在此处输入图像描述

如何进行 mysql 查询来累加每天的gained积分?

我正在使用while循环遍历所有这些行(最后 50 行),它将显示“在 2012 年 12 月 15 日获得等”

DECEMBER 15, 2012
HISTORY ITEM 1 | 500+
HISTORY ITEM 2 | 500+
HISTORY ITEM 3 | 1500+
----PTS GAINED THIS DAY: 2500+

DECEMBER 14, 2012
HISTORY ITEM 1 | 500+
HISTORY ITEM 2 | 500+
----PTS GAINED THIS DAY: 1000+

等等。

这是我到目前为止所拥有的:$getIt = mysql_query("SELECT SUM(gained) FROMhistory WHEREuid = '$logged[id]' ANDtime > $ts_yesterday ORDER BYid`DESC") 或 die(mysql_error());

以及循环$ts_yesterday = strtotime('yesterday', $status['4']);$status来源......显然引用了mysql_fetch_array该列whiletime

4

3 回答 3

0

您可以使用 SELECT SUM(gained), DATE_FORMAT(created_at,"%Y-%m-%d") as created_day FROM history GROUP BY created_day

这里

于 2012-12-15T02:39:23.673 回答
0

你可以试试select sum(gained) from tablename groupby date

于 2012-12-15T03:19:08.713 回答
0

在我看来 sum() 和 group by 是适合你的方式。MySQL 的另一个很酷的特性是 group by 的 ROLL UP 修饰符。一探究竟

http://forums.mysql.com/read.php?12,106959,106959 http://dev.mysql.com/doc/refman/5.6/en/group-by-modifiers.html(开始谈论卷向上功能大约在页面下方的 1/4。)

于 2012-12-15T03:31:18.320 回答