MYSQL GROUP BY查询结果似乎仅限于31个


MYSQL GROUP BY Query results seem limited to 31

我有一个树莓派温度监测系统设置,一切运行正常,除了我现在注意到我的每日最小值,最大值和AVG查询不显示超过31个结果。问题似乎是与GROUP BY语句,当我将天数限制到任何少于31我得到所有最新的数据,但任何更多,然后它只会显示31最老的数据天。我有一个图表,应该显示每天的最小,最大和平均温度。

如果有人能帮我的话。

这样,它只会显示从26/05/2014(我登录的第一天)到27/06/2014的数据,并停在那里:

SELECT DATE_FORMAT(date,'%d') AS date2, 
   MAX(temperature), 
   MAX(temp2), MIN(temperature), 
   MIN(temp2), AVG(temperature), AVG(temp2) 
FROM data
GROUP BY date2
ORDER BY id ASC

这样它将显示最近31天的数据(从今天减去30天)-不是我想要的:

mysql_select_db("mysensors", $con);
$result = mysql_query("SELECT DATE_FORMAT(date,'%W %e %b %Y') AS date,
                              MAX(temperature), 
                              MAX(temp2), MIN(temperature), MIN(temp2),
                              AVG(temperature), AVG(temp2) 
                FROM data
                WHERE DATE(`date`) > DATE_SUB(NOW(), INTERVAL 30 DAY)
                GROUP BY DAY(date)
                ORDER BY id ASC") or die ("Imposible");

您按天对结果进行分组,这就是为什么您只看到31个结果。

世界上只有31天(01-31)。