HAVING (Entity SQL)
指定群組或彙總的搜尋條件。
[ HAVING search_condition ]
引數
- search_condition
指定群組或彙總要符合的搜尋條件。搭配 GROUP BY ALL 使用 HAVING 時,HAVING 子句會覆寫 ALL。
備註
HAVING 子句是用來在群組的結果上指定額外篩選條件。如果查詢運算式中未指定 GROUP BY 子句,便會假設為一組隱含的單一群組。
附註 |
---|
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 為依據。若要編譯及執行此查詢,請遵循以下步驟:
將下列查詢當成引數傳遞至
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