在 SQL 查询中,HAVING 子句通常与 GROUP BY 子句一起使用,用于过滤由 GROUP BY 子句生成的分组
以下是一个使用 HAVING 和 GROUP BY 的简单示例:
SELECT column_name1, aggregate_function(column_name2) FROM table_name GROUP BY column_name1 HAVING condition;
这里是一个具体的例子。假设我们有一个名为 “orders” 的表格,其中包含以下列:customer_id(顾客ID)、order_date(订单日期)和 amount(金额)。
我们想要查询每个顾客的订单总金额,但只显示那些订单总金额超过 1000 的顾客。
SELECT customer_id, SUM(amount) as total_amount FROM orders GROUP BY customer_id HAVING total_amount > 1000;
在这个查询中,我们首先选择 customer_id 和 amount 的总和(命名为 total_amount)。然后,我们按 customer_id 对结果进行分组。最后,我们使用 HAVING 子句来过滤出那些订单总金额大于 1000 的分组。