Dela via


SELECT – HA (Transact-SQL)

Gäller för:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalysplattformssystem (PDW)SQL-analysslutpunkt i Microsoft FabricLager i Microsoft FabricSQL-databas i Förhandsversion av Microsoft Fabric

Anger ett sökvillkor för en grupp eller en aggregering. HAVING kan endast användas med SELECT-instruktionen. HAVING används vanligtvis med en GROUP BY-sats. När GROUP BY inte används finns det en implicit enskild, aggregerad grupp.

Transact-SQL syntaxkonventioner

Syntax

[ HAVING <search condition> ]  

Arguments

< > search_condition Anger ett eller flera predikat som grupper och/eller aggregeringar ska uppfylla. Mer information om sökvillkor och predikat finns i Sökvillkor (Transact-SQL).

Datatyperna text, bild och ntext kan inte användas i en HAVING-sats.

Examples

I följande exempel som använder en enkel HAVING sats hämtas summan för var och en SalesOrderID från tabellen SalesOrderDetail som överskrider $100000.00.

USE AdventureWorks2022;  
GO  
SELECT SalesOrderID, SUM(LineTotal) AS SubTotal  
FROM Sales.SalesOrderDetail  
GROUP BY SalesOrderID  
HAVING SUM(LineTotal) > 100000.00  
ORDER BY SalesOrderID ;  

Exempel: Azure Synapse Analytics and Analytics Platform System (PDW)

I följande exempel används en HAVING sats för att hämta summan SalesAmount som överskrider 80000 för varje OrderDateKey från FactInternetSales tabellen.

-- Uses AdventureWorks  
  
SELECT OrderDateKey, SUM(SalesAmount) AS TotalSales   
FROM FactInternetSales  
GROUP BY OrderDateKey   
HAVING SUM(SalesAmount) > 80000  
ORDER BY OrderDateKey;  

See Also

GRUPPERA EFTER (Transact-SQL)
WHERE (Transact-SQL)