Documentation

GROUP BY 子句

使用 GROUP BY 子句按值对数据进行分组。

GROUP BY 是一个可选子句,用于对列表中所有列和表达式具有相同值的行进行分组。 要为每个组输出聚合,请在 SELECT 语句中包含聚合函数或选择器函数。 当 GROUP BY 出现在查询中时,SELECT 列表只能使用出现在 GROUP BY 列表或聚合表达式中的列。

按别名分组

  • GROUP BY 可以使用在 SELECT 子句中定义的列别名。
  • 如果别名与原始列名相同,则 GROUP BY 不会使用别名值。 GROUP BY 使用列的原始值,而不是转换后的别名值。 我们建议在 GROUP BY 子句中使用列序号来按转换后的值进行分组,并保持别名标识符。

语法

SELECT
  AGGREGATE_FN(field1),
  tag1
FROM measurement
GROUP BY tag1

示例

按标签值对数据进行分组

SELECT
  AVG(water_level) AS avg_water_level,
  location
FROM h2o_feet
GROUP BY location

查看示例结果

按标签将数据分组到 15 分钟的时间间隔

SELECT
  location,
  DATE_BIN(INTERVAL '15 minutes', time) AS time,
  COUNT(water_level) AS count
FROM h2o_feet
WHERE 
  time >= timestamp '2019-09-17T00:00:00Z'
  AND time <= timestamp '2019-09-17T01:00:00Z'
GROUP BY 1, location
ORDER BY location, 1

查看示例结果


此页面是否对您有帮助?

感谢您的反馈!


Flux 的未来

Flux 即将进入维护模式。 您可以继续像现在一样使用它,而无需对代码进行任何更改。

阅读更多

InfluxDB 3 开源版本现已公开 Alpha 测试

InfluxDB 3 开源版本现已可用于 alpha 测试,并根据 MIT 或 Apache 2 许可获得许可。

我们正在发布两个作为 alpha 版本一部分的产品。

InfluxDB 3 Core 是我们新的开源产品。 它是用于时间序列和事件数据的最新数据引擎。 InfluxDB 3 Enterprise 是一个商业版本,它建立在 Core 的基础上,增加了历史查询功能、读取副本、高可用性、可扩展性和细粒度的安全性。

有关如何开始使用的更多信息,请查看