gpt4 book ai didi

mysql - SQL 请求获取特定时期的平均值

转载 作者:行者123 更新时间:2023-11-30 00:04:54 26 4
gpt4 key购买 nike

我有一个来自气象站的 mySQL 数据库。我有一个带有高图表的小网站来查看结果。它工作得很好,但在很长一段时间内(例如一年)我有非常重要的分数(每 10 分钟一分)。为了获得高效的显示,我使用以下查询:

mysql_query("SET @rownum:=0;");
$query = sprintf("SELECT timestamp,rec_date,temp_in,temp_out,dewpoint,rel_hum_in,rel_hum_out FROM weather WHERE rec_date >= '$Date1' AND rec_date <= '$Date2' AND MOD((@rownum:=@rownum+1),144)=1;");
$result = mysql_query($query) or die('text');

Date1 和 Date2 由用户从日期选择器给出。我使用 mysql_fetch_assoc 函数将结果存储在各种数组中。因此查询每 144 条记录返回 1 点(每天 1 点)。但它不是当天值的平均值,而只是当天的一条记录。

我想要每天的时间戳、temp_in、temp_out、露点、rel_hum_in 和 rel_hum_out 的平均值,即每一天的 365 个平均值(取决于 Date1 和 Date2,但在我的示例中是一年)。我的问题是我是 SQL 语言的新手,我找不到实现这一目标的方法。有人能帮我吗 ?提前致谢。

最佳答案

使用AVG()聚合函数。

SELECT DATE(timestamp) date, AVG(temp_in) temp_in, AVG(temp_out), ...
FROM weather
WHERE rec_date BETWEEN '$Date1' AND '$Date2'
GROUP BY date

关于mysql - SQL 请求获取特定时期的平均值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24660155/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com