SELECT – HAVING (Transact-SQL)

  • 01/21/2020
  • 2 minutos para leer
    • V
    • c
    • M
    • m
    • M
    • +4
  • Se aplica a: SQL Server (todas las versiones compatibles) Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Parallel Data Warehouse

    Especifica una condición de búsqueda para un grupo o un agregado. HAVING sólo puede utilizarse con la sentencia SELECT. HAVING se utiliza normalmente con una cláusula GROUP BY. Cuando no se utiliza GROUP BY, hay un grupo único y agregado implícito.

    Convenciones de sintaxis de Transact-SQL

    Sintaxis

 

Nota

Para ver la sintaxis de Transact-SQL para SQL Server 2014 y anteriores, consulte la documentación de las versiones anteriores.

Argumentos

<search_condition>Especifica uno o más predicados para que los grupos y/o agregados los cumplan. Para obtener más información sobre las condiciones de búsqueda y los predicados, consulte Condición de búsqueda (Transact-SQL).

Los tipos de datos text, image y ntext no se pueden utilizar en una cláusula HAVING.

Ejemplos

El siguiente ejemplo que utiliza una simple cláusula HAVING recupera el total de cada SalesOrderID de la tabla SalesOrderDetail que 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 ; 

Ejemplos: Azure Synapse Analytics y Parallel Data Warehouse

El siguiente ejemplo utiliza una cláusula HAVING para recuperar el total SalesAmount que supera 80000 para cada OrderDateKey de la tabla FactInternetSales.

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

Ver también

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

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *