区间统计 聚合函数组合器

 

聚合函数组合器 | ClickHouse Docs https://clickhouse.com/docs/zh/sql-reference/aggregate-functions/combinators

示例

考虑一下 people 表具有以下数据的表结构:

┌─name───┬─age─┬─wage─┐
│ John │ 16 │ 10 │
│ Alice │ 30 │ 15 │
│ Mary │ 35 │ 8 │
│ Evelyn │ 48 │ 11.5 │
│ David │ 62 │ 9.9 │
│ Brian │ 60 │ 16 │
└────────┴─────┴──────┘
 

让我们得到的人的名字,他们的年龄在于的时间间隔 [30,60) 和 [60,75)。 由于我们使用整数表示的年龄,我们得到的年龄 [30, 59] 和 [60,74] 间隔。

要在数组中聚合名称,我们使用 groupArray 聚合函数。 这需要一个参数。 在我们的例子中,它是 name 列。 groupArrayResample 函数应该使用 age 按年龄聚合名称, 要定义所需的时间间隔,我们传入 30, 75, 30 参数给 groupArrayResample 函数。

SELECT groupArrayResample(30, 75, 30)(name, age) FROM people
 
┌─groupArrayResample(30, 75, 30)(name, age)─────┐
│ [['Alice','Mary','Evelyn'],['David','Brian']] │
└───────────────────────────────────────────────┘

允许您将数据划分为组,然后单独聚合这些组中的数据。 通过将一列中的值拆分为间隔来创建组。

 
 
posted @ 2024-05-27 14:14  papering  阅读(14)  评论(0编辑  收藏  举报