我有一个Raspberry Pi温度监控系统设置,一切运行正常,除了我现在注意到我的每日最小,最大和AVG查询没有显示超过31个结果。问题似乎与GROUP BY语句有关,当我将天数限制为小于31的任何数据时,我会获得所有最新数据,但除此之外,它只会显示31个最早的数据日。我有一个图表,应该显示每天的MIN,MAX和AVG温度。
请有人帮助我。
有了这个,它只会显示2014年5月26日(我记录的第一天)到2014年6月27日的数据并停在那里:
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");
答案 0 :(得分:8)
您按天分组结果,这就是您只能看到31个结果的原因。
只有31天(01-31)。