HAVING (Entity SQL)

指定组或聚合的搜索条件。

语法

[ HAVING search_condition ]  

参数

search_condition
指定组或聚合应满足的搜索条件。 当 HAVING 与 GROUP BY ALL 一起使用时,HAVING 子句优先于 ALL。

备注

HAVING 子句用于对分组结果指定附加筛选条件。 如果在查询表达式中未指定 GROUP BY 子句,则将使用隐式单集组。

备注

HAVING 只能与 SELECT 语句一起使用。 如果不使用 GROUP BY 子句,则 HAVING 的行为与 WHERE 子句一样。

HAVING 子句与 WHERE 子句的工作方式类似,只是它应用在 GROUP BY 操作之后。 这意味着 HAVING 子句只能引用分组别名和聚合,如下面的示例所示:

SELECT Name, SUM(o.Price * o.Quantity) AS Total FROM orderLines AS o GROUP BY o.Product AS Name  
HAVING SUM(o.Quantity) > 1  

上例将组限定为只包含多个产品的组。

示例

下面的 Entity SQL 查询使用 HAVING 和 GROUP BY 运算符指定组或聚合的搜索条件。 此查询基于 AdventureWorks 销售模型。 若要编译并运行此查询,请执行下列步骤:

  1. 执行如何:执行返回 PrimitiveType 结果的查询中的过程。

  2. 将以下查询作为参数传递给 ExecutePrimitiveTypeQuery 方法:

SELECT VALUE name FROM AdventureWorksEntities.Products 
    AS P GROUP BY P.Name HAVING MAX(P.ListPrice) > @price

请参阅