示例
示例
SELECT city, COUNT(*) AS user_cnt
FROM users
GROUP BY city
HAVING COUNT(*) > 5
ORDER BY user_cnt DESC;| 时机 | GROUP BY 之后 |
|---|---|
| 内容 | 可包含聚合表达式 |
| 对比 | WHERE 在分组前过滤行 |
HAVING 在分组与聚合之后过滤:条件里可以用聚合函数,HAVING COUNT(*) > 5 是典型用法。
SELECT city, COUNT(*) AS user_cnt
FROM users
GROUP BY city
HAVING COUNT(*) > 5
ORDER BY user_cnt DESC;| 时机 | GROUP BY 之后 |
|---|---|
| 内容 | 可包含聚合表达式 |
| 对比 | WHERE 在分组前过滤行 |