Note
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier les répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de changer de répertoire.
S’applique à :SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analytics Platform System (PDW)
Point de terminaison d’analytique SQL dans Microsoft Fabric
Entrepôt dans Microsoft Fabric
Base de données SQL dans Microsoft Fabric
Indique un critère de recherche pour un groupe ou une fonction d'agrégation. HAVING ne peut être utilisé qu'avec l'instruction SELECT. HAVING est généralement utilisé avec une clause GROUP BY. Sans la clause GROUP BY, un seul groupe agrégé est implicitement utilisé.
Conventions de la syntaxe Transact-SQL
Syntax
[ HAVING <search condition> ]
Arguments
<search_condition> spécifie un ou plusieurs prédicats devant être remplis pour les groupes et/ou agrégats. Pour plus d’informations sur les prédicats et conditions de recherche, consultez Condition de recherche (Transact-SQL).
Les types de données text, image et ntext ne peuvent pas être utilisés avec une clause HAVING.
Examples
L'exemple suivant utilise une clause HAVING simple, extrait le total de chaque SalesOrderID depuis la table SalesOrderDetail qui dépasse les $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 ;
Exemples : Azure Synapse Analytics et Analytics Platform System (PDW)
L’exemple suivant utilise une clause HAVING pour récupérer le SalesAmount total qui dépasse 80000 pour chaque OrderDateKey de la table FactInternetSales.
-- Uses AdventureWorks
SELECT OrderDateKey, SUM(SalesAmount) AS TotalSales
FROM FactInternetSales
GROUP BY OrderDateKey
HAVING SUM(SalesAmount) > 80000
ORDER BY OrderDateKey;