Megosztás a következőn keresztül:


SELECT – HAVING (Transact-SQL)

A következőkre vonatkozik:SQL ServerAzure SQL DatabaseFelügyelt Azure SQL-példányAzure Synapse AnalyticsElemzési platformrendszer (PDW)SQL Analytics-végpont a Microsoft FabricbenRaktár a Microsoft FabricbenSQL-adatbázis a Microsoft Fabricben

Egy csoport vagy összesítés keresési feltételét adja meg. A HAVING csak a SELECT utasítással használható. A HAVING általában GROUP BY záradékkal használható. Ha a GROUP BY nem használatos, egy implicit, összesített csoport van.

Transact-SQL szintaxis konvenciók

Syntax

[ HAVING <search condition> ]  

Arguments

< > search_condition Egy vagy több predikátumot határoz meg a csoportok és/vagy összesítések számára. A keresési feltételekről és predikátumokról további információt a Keresési feltétel (Transact-SQL)című témakörben talál.

A szöveg, a kép és az ntext adattípus nem használható a HAVING záradékban.

Examples

Az alábbi, egyszerű HAVING záradékot használó példa lekéri az összesítést SalesOrderID a SalesOrderDetail fenti $100000.00táblázatból.

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

Példák: Azure Synapse Analytics and Analytics Platform System (PDW)

Az alábbi példa egy záradékot HAVING használ az egyes SalesAmount tábláknál nagyobb 80000 összeg OrderDateKey lekéréséreFactInternetSales.

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

Lásd még:

CSOPORTOS (Transact-SQL)
AHOL (Transact-SQL)