Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/58.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 我如何在一个时间段内创建一个组?_Mysql - Fatal编程技术网

Mysql 我如何在一个时间段内创建一个组?

Mysql 我如何在一个时间段内创建一个组?,mysql,Mysql,我有一张有时间戳、温度和湿度的桌子。我想得到湿度在80%以上时的平均温度。差不多 挑选 最小值(DTM), 最大值(DTM), 平均值(TMP) 分组依据(其中HMD>80) 可能吗 多谢各位 雨果 我需要的是定义一个周期,从湿度超过80%开始,到湿度下降结束。然后我必须在Group BY子句中获得开始时间戳、结束时间戳和平均温度,您需要使用用例,而不是其中: SELECT MIN (DTM), MAX (DTM), AVG(TMP) GROUP BY (CASE WHEN HMD>80

我有一张有时间戳、温度和湿度的桌子。我想得到湿度在80%以上时的平均温度。差不多

挑选 最小值(DTM), 最大值(DTM), 平均值(TMP) 分组依据(其中HMD>80)

可能吗

多谢各位

雨果


我需要的是定义一个周期,从湿度超过80%开始,到湿度下降结束。然后我必须在Group BY子句中获得开始时间戳、结束时间戳和平均温度,您需要使用用例,而不是其中:

SELECT MIN (DTM), MAX (DTM), AVG(TMP) GROUP BY (CASE WHEN HMD>80 THEN HMD END);

在GROUPBY子句中,您需要使用用例,而不是WHERE:

SELECT MIN (DTM), MAX (DTM), AVG(TMP) GROUP BY (CASE WHEN HMD>80 THEN HMD END);
更像:

SELECT MIN (DTM), MAX (DTM), AVG(TMP) FROM tbl WHERE HMD>80 GROUP BY location
不过,您的主要问题是提取有效范围,因为
HMD>80
将返回与条件匹配的所有行,无论它们是否在同一时期

如果您确实需要事先提取有效范围,您可能希望访问以下线程:

更像是:

SELECT MIN (DTM), MAX (DTM), AVG(TMP) FROM tbl WHERE HMD>80 GROUP BY location
不过,您的主要问题是提取有效范围,因为
HMD>80
将返回与条件匹配的所有行,无论它们是否在同一时期

如果您确实需要事先提取有效范围,您可能希望访问以下线程:


您想按什么分组?你应该有明确的具体值来分组,例如时间戳的日期。因此,你正在寻找一个或多个连续时间戳的范围,其中湿度在整个范围内保持在80%以上?你想按什么分组?您应该根据时间戳的日期等不同的具体值进行分组。因此,您正在寻找一个或多个连续时间戳的范围,其中湿度在整个范围内保持在80%以上?位置从何处来?它从何处来。他的查询无论如何都是无效的,因为它没有
from
子句。但是我假设他试图平均每个城市/地区/位置/某物。
location
来自哪里?它来自哪里。他的查询无论如何都是无效的,因为它没有
from
子句。但我假设他是在尝试平均每个城市/地区/地点/某物。