聚合
什么是聚合?
聚合 是使用数学函数汇总数据的行为,例如计算列中值的平均值,或计算表中的行数。结果数字通常称为指标,这与 Metabase 中的 指标 不同。
字段中的单个值本身可能没有太多意义,但是当我们以某种特定方式组合这些值时,我们可以更全面地了解我们的数据。聚合是将这些值折叠成单个结果的过程,通常与分组结合使用——即将多行基于某个值组合在一起,例如按维度(例如,产品类别或国家/地区)分组。
聚合可以即时计算,但您可能还希望使用结果创建摘要表,并将这些聚合函数的结果保存以供将来使用。当处理大型数据集时,摘要表尤其有用;由于摘要表是预先计算的,因此依赖于它们的查询可以运行得更快。
SQL 中常用的聚合函数
不同的数据库有不同的函数集,但以下是一些您会遇到的最常见的聚合函数
COUNT()
- 统计表中的行数。AVG()
– 计算字段中值的平均值。MIN()
– 识别字段中的最小值。MAX()
– 识别字段中的最大值。SUM()
– 返回字段中值的总和。STDEV()
– 计算字段中值的标准差。
聚合示例
使用 Metabase 的 示例数据库,假设我们想知道我们产品的平均价格,按产品类别分组。在这种情况下,我们将使用 Products
表。我们的 SQL 查询如下所示
SELECT
category,
avg(price)
FROM products
GROUP BY category
正如我们所希望的那样,我们计算了 Products
表的 Price
列中的值的平均值,并根据它们在 Category
字段中的值对这些平均值进行了分组。
如果我们想在 Metabase 的 查询构建器 中执行相同的聚合,我们将**汇总** Price
的**平均值**,然后按 Category
分组,如下面的图像所示
