SELECT 聚合函数(列名)FROM 表名GROUP BY 分组列HAVING 筛选条件;用法:HAVING">

mysql having用法

来源:这里教程网 时间:2026-02-28 18:15:55 作者:

HAVING 子句在 MySQL 中的用法

HAVING 子句是在 MySQL 中用于筛选聚合结果(例如 SUM、COUNT、AVG 等)的行。它类似于 WHERE 子句,但它是在聚合函数执行后再应用的,因此只能引用聚合函数和分组列。

语法:

<code class="sql">SELECT 聚合函数(列名)
FROM 表名
GROUP BY 分组列
HAVING 筛选条件;</code>

用法:

HAVING 子句用于以下情况:

过滤聚合结果:根据聚合函数的值筛选行。例如,查找销售额超过 1000 美元的订单。 应用多个筛选条件:可以使用多个 HAVING 子句来应用复杂的筛选条件。例如,查找销售额超过 1000 美元且客户类型为“批发”的订单。 对聚合结果进行排序:可以使用 HAVING 子句对聚合结果进行排序。例如,按销售额从高到低排序订单。

示例:

查找销售额超过 1000 美元的订单:

<code class="sql">SELECT SUM(销售额)
FROM 订单表
GROUP BY 订单号
HAVING SUM(销售额) > 1000;</code>

查找销售额超过 1000 美元且客户类型为“批发”的订单:

<code class="sql">SELECT SUM(销售额)
FROM 订单表
GROUP BY 订单号
HAVING SUM(销售额) > 1000
AND 客户类型 = '批发';</code>

按销售额从高到低排序订单:

<code class="sql">SELECT SUM(销售额)
FROM 订单表
GROUP BY 订单号
HAVING SUM(销售额) > 0
ORDER BY SUM(销售额) DESC;</code>

相关推荐