Saltar al contenido

Having count sql con ejemplos

Having count en SQL para filtrar un grupo de filas resumidos por una de las funciones de calculo(SumCountAvg etc…). Todos estos ejemplos aplican para el SGBD de su preferencia( oraclemysql ,Sqlservermariadb entre otros).

Este articulo caso mostraremos un ejemplo de Having con cada unas de las funciones desde sql server tomando en cuenta que el having esta acompañado del group by

Índice

    Para que sirve having en sql?

    La cláusula HAVING combinada con COUNT() en SQL es esencial para contar y filtrar registros agrupados en una base de datos. Sin embargo, cuando se combina con la cláusula HAVING, adquiere un poder adicional al permitir el filtrado de grupos basados en condiciones específicas.

    Para esto debemos entender que hace:

    • Primero, examina divide los registros por grupos según la cantidad de columnas especificadas
    • En segundo lugar, calcula los valores indicados en función con la clausula de SQL(Sumcount(*) sqlMaxMin etc) utilizada
    • Tercero aplica el filtro de grupo para mostrar solo lo que apliquen con la condición Having

    Requisitos para iniciar

    Para poder hacer cualquiera de estos ejemplos te recomendamos utilizar una GUI que se adapte a tus necesidades o en caso de que seas un desarrollador y necesitas trabajar rapidamente te recomiendo bajar esta extension de mysql en visual studio code.

    Ejemplo de función SQL HAVING con MIN

    En este ejemplo utilizaremos nuestra tabla de productos indicaremos que necesitamos los registros cuya orden mínima sea menor que < 5

    SELECT [ProductID],MIN([OrderQty])
    
    FROM [AventureWorks].[SalesLT].[SalesOrderDetail]
    
    Group by [ProductID]
    
    HAVING MIN([OrderQty]) < 5

    luego de ver este resultado tambien te recomindo aprender mas de la funcion MIN Y MAX ent el siguiente enlace.

    Having max sql ejemplos

    Ejemplo utilizaremos nuestra tabla de productos indicaremos que necesitamos los registros cuya orden Máxima sea menor que < 5

    SELECT [ProductID],Max([OrderQty])
    
    FROM [AventureWorks].[SalesLT].[SalesOrderDetail]
    
    Group by [ProductID]
    
    HAVING Max([OrderQty]) < 5

    count(*) sql server con Ejemplo

    Para uso general la función count en sql se utiliza para contar aquí la usamos en nuestra tabla de productos indicaremos que necesitamos los registros cuya orden contenga una cantidad de registros menor que < 5.

    SELECT [ProductID],Count([OrderQty])
    
    FROM [AventureWorks].[SalesLT].[SalesOrderDetail]
    
    Group by [ProductID]
    
    HAVING Count([OrderQty]) < 5

    Función SQL HAVING con SUM

    Nuestra tabla de productos indicaremos que necesitamos los registros cuya orden sumen mas sea menor que < 5 unidades solicitadas

    SELECT [ProductID],SUM([OrderQty])
    
    FROM [AventureWorks].[SalesLT].[SalesOrderDetail]
    
    Group by [ProductID]
    
    HAVING SUM([OrderQty]) < 5

    Group by con HAVING AVG ejmplo

    La tabla de productos indicaremos que necesitamos los registros cuya orden en promedio sea menor que < 5

    SELECT [ProductID],AVG([OrderQty])
    
    FROM [AventureWorks].[SalesLT].[SalesOrderDetail]
    
    Group by [ProductID]
    
    HAVING AVG([OrderQty]) < 5

    En resumen

    En conclusión, hemos explorado el uso de group by having con ejemplos únicos para cada función. Es importante destacar que cada comando HAVING presentado en este artículo puede ser implementado con éxito en el motor de base de datos de su elección.