在 SQL 中,HAVING 和 ORDER BY 子句通常用于对查询结果进行筛选和排序
以下是一个使用 HAVING 和 ORDER BY 的示例:
SELECT customer_id, COUNT(order_id) as total_orders FROM orders GROUP BY customer_id HAVING total_orders > 5 ORDER BY total_orders DESC;
这个查询首先按 customer_id
对 orders
表进行分组,并计算每个客户的订单数量(total_orders
)。然后,HAVING 子句过滤出订单数量大于 5 的客户。最后,查询结果按照订单数量降序排列。
需要注意的是,HAVING 子句必须在 GROUP BY 子句之后使用,而 ORDER BY 子句则可以放在查询的任何位置。但是,将其放在查询的最后,可以更清晰地表明你对结果的排序要求。