SELECT – HAVING (Transact-SQL)

  • 21/01/2020
  • 2 minutes de lecture
    • V
    • c
    • M
    • Diversité de l’utilisateur.M
    • m
    • M
    • +4

S’applique à : SQL Server (toutes les versions prises en charge) Azure SQL Database Azure SQL Managed Instance. Azure Synapse Analytics Entrepôt de données parallèle

Spécifie une condition de recherche pour un groupe ou un agrégat. HAVING ne peut être utilisé qu’avec l’instruction SELECT. HAVING est généralement utilisé avec une clause GROUP BY. Lorsque GROUP BY n’est pas utilisé, il existe un groupe unique implicite et agrégé.

Conventions syntaxiques Transact-SQL

Syntaxe

 

Note

Pour consulter la syntaxe Transact-SQL de SQL Server 2014 et des versions antérieures, consultez la documentation des versions antérieures.

Arguments

<search_condition>Spécifie un ou plusieurs prédicats que les groupes et/ou les agrégats doivent satisfaire. Pour plus d’informations sur les conditions de recherche et les prédicats, voir Condition de recherche (Transact-SQL).

Les types de données texte, image et ntext ne peuvent pas être utilisés dans une clause HAVING.

Exemples

L’exemple suivant qui utilise une simple clause HAVING récupère le total pour chaque SalesOrderID de la table SalesOrderDetail qui dépasse $100000.00.

USE AdventureWorks2012 ; 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 Parallel Data Warehouse

L’exemple suivant utilise une clause HAVING pour récupérer le total. SalesAmount 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; 

Voir aussi

GROUP BY (Transact-SQL)
WHERE (Transact-SQL)

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *