HAVING (Entity SQL)

指定群組或彙總的搜尋條件。

[ HAVING search_condition ]

引數

  • search_condition
    指定群組或彙總要符合的搜尋條件。搭配 GROUP BY ALL 使用 HAVING 時,HAVING 子句會覆寫 ALL。

備註

HAVING 子句是用來在群組的結果上指定額外篩選條件。如果查詢運算式中未指定 GROUP BY 子句,便會假設為一組隱含的單一群組。

Bb399595.note(zh-tw,VS.100).gif注意:
HAVING 只能搭配 SELECT (Entity SQL) 陳述式使用。未使用 GROUP BY (Entity SQL) 時,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 Sales Model 為依據。若要編譯及執行此查詢,請遵循以下步驟:

  1. 按照 HOW TO:執行可傳回 PrimitiveType 結果的查詢 (EntityClient) 中的程序進行。

  2. 將下列查詢當成引數傳遞至 ExecutePrimitiveTypeQuery 方法:

SELECT VALUE name FROM AdventureWorksEntities.Product 
    as P GROUP BY P.Name HAVING MAX(P.ListPrice) > 5

輸出如下所示:

Value: LL Mountain Seat Assembly
Value: ML Mountain Seat Assembly
Value: HL Mountain Seat Assembly
Value: LL Road Seat Assembly
Value: ML Road Seat Assembly

另請參閱

概念

Entity SQL 參考
查詢運算式 (Entity SQL)