HAVING 子句 | ClickHouse 文档 - ClickHouse 教程
允许过滤由 GROUP BY 生成的聚合结果。它类似于 WHERE 子句,但区别在于 WHERE 在聚合之前执行,而 HAVING 在聚合之后执行。
可以在 HAVING 子句中通过其别名引用 SELECT 子句中的聚合结果。或者,HAVING 子句可以过滤不在查询结果中返回的附加聚合的结果。
如果有一个名为 sales 的表,如下所示
CREATE TABLE sales
(
region String,
salesperson String,
amount Float64
)
ORDER BY (region, salesperson);
您可以这样查询它
SELECT
region,
salesperson,
sum(amount) AS total_sales
FROM sales
GROUP BY
region,
salesperson
HAVING total_sales > 10000
ORDER BY total_sales DESC;
这将列出其区域内总销售额大于 10,000 的销售人员。
如果在没有执行聚合的情况下,不能使用 HAVING。请使用 WHERE 代替。


© . This site is unofficial and not affiliated with ClickHouse, Inc.