在 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 的分組。