SELECT – HAVING (Transact-SQL)

  • 01/21/2020
  • 2 minuti per leggere
    • V
    • c
    • M
    • m
    • M
    • +4

Si applica a: QL Server (tutte le versioni supportate) Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Parallel Data Warehouse

Specifica una condizione di ricerca per un gruppo o un aggregato. HAVING può essere usato solo con l’istruzione SELECT. HAVING è tipicamente usato con una clausola GROUP BY. Quando GROUP BY non è usato, c’è un singolo gruppo aggregato implicito.

Convenzioni sulla sintassi Transact-SQL

Sintassi

 

Nota

Per vedere la sintassi Transact-SQL per SQL Server 2014 e precedenti, vedere la documentazione delle versioni precedenti.

Argomenti

<search_condition>Specifica uno o più predicati per i gruppi e/o aggregati da soddisfare. Per maggiori informazioni sulle condizioni di ricerca e i predicati, vedere Condizione di ricerca (Transact-SQL).

I tipi di dati text, image e ntext non possono essere usati in una clausola HAVING.

Esempi

L’esempio seguente che usa una semplice clausola HAVING recupera il totale per ogni SalesOrderID dalla tabella SalesOrderDetail che supera $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 ; 

Esempi: Azure Synapse Analytics e Parallel Data Warehouse

L’esempio seguente utilizza una clausola HAVING per recuperare il totale SalesAmount che supera 80000 per ogni OrderDateKey dalla tabella FactInternetSales.

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

Vedi anche

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

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *