PostgreSQL HAVING 子句
HAVING
SQL 新增 HAVING
子句是因為 WHERE
子句不能與聚合函式一起使用。
聚合函式通常與 GROUP BY
子句一起使用,透過新增 HAVING
,我們可以像使用 WHERE
子句一樣編寫條件。
示例
僅列出出現次數超過 5 次的國家
SELECT COUNT(customer_id), country
FROM customers
GROUP BY country
HAVING COUNT(customer_id) > 5;
執行示例 »
更多 HAVING 示例
以下 SQL 語句僅列出總價為 400 美元或以上的訂單
示例
SELECT order_details.order_id, SUM(products.price)
FROM order_details
LEFT JOIN products ON order_details.product_id = products.product_id
GROUP BY order_id
HAVING SUM(products.price) > 400.00;
執行示例 »
列出訂購金額為 1000 美元或以上的客戶
示例
SELECT customers.customer_name, SUM(products.price)
FROM order_details
LEFT JOIN products ON order_details.product_id = products.product_id
LEFT JOIN orders ON order_details.order_id = orders.order_id
LEFT JOIN customers ON orders.customer_id = customers.customer_id
GROUP BY customer_name
HAVING SUM(products.price) > 1000.00;
執行示例 »