Las funciones de agregación son subprogramas en SQL que devuelven un único valor al ser invocadas. Estas funciones se utilizan para realizar cálculos estadísticos estándar sobre atributos o campos de una tabla, como calcular totales, promedios, encontrar valores extremos (mínimo/máximo) y contar el número de registros.
En términos simples, las funciones de agregación procesan muchas filas de datos para producir un único valor de salida conciso e informativo.
1. Tipos de Funciones de Agregación
Existen cinco funciones de agregación principales que se utilizan con frecuencia en el procesamiento de datos:
- SUM Esta función se utiliza para sumar todos los datos de una columna determinada. Es importante tener en cuenta que la función SUM solo se puede aplicar a columnas con tipos de datos numéricos. Sintaxis: SELECT SUM(nombre_columna) FROM nombre_tabla WHERE condición;
- COUNT Esta función se utiliza para contar el número de filas existentes en una columna. A diferencia de SUM, la función COUNT puede trabajar con tipos de datos numéricos y no numéricos (cadenas/texto). Sintaxis: SELECT COUNT(nombre_columna) FROM nombre_tabla WHERE condición;
- AVG (Average) Esta función se utiliza para calcular el valor promedio de una columna. Al igual que SUM, esta función solo opera con tipos de datos numéricos. Sintaxis: SELECT AVG(nombre_columna) FROM nombre_tabla WHERE condición;
- MIN Esta función se utiliza para mostrar el valor más pequeño de una columna. La función MIN es flexible, ya que puede trabajar con tipos de datos numéricos y no numéricos. Sintaxis: SELECT MIN(nombre_columna) FROM nombre_tabla WHERE condición;
- MAX Al contrario que MIN, esta función se utiliza para mostrar el valor más grande de una columna. Esta función también admite tipos de datos numéricos y no numéricos. Sintaxis: SELECT MAX(nombre_columna) FROM nombre_tabla WHERE condición;
2. Cláusula GROUP BY
La cláusula GROUP BY se utiliza para agrupar datos en una o varias columnas según la expresión deseada. Su funcionamiento consiste en reunir los registros que tienen el mismo valor en un mismo grupo.
El uso de esta cláusula está estrechamente relacionado con las funciones de agregación, ya que a menudo se desea ver los resultados estadísticos (como totales o promedios) para cada categoría específica. Sintaxis: SELECT nombre_columna FROM nombre_tabla GROUP BY nombre_columna;
3. Cláusula HAVING
La cláusula HAVING tiene una función similar a la cláusula WHERE, que es añadir condiciones o filtros a los resultados de la consulta. Sin embargo, existen diferencias fundamentales entre ambas:
- Sustituta de WHERE: La cláusula WHERE no puede utilizarse junto con funciones de agregación. Por lo tanto, se utiliza HAVING para filtrar los datos basándose en los resultados de dichas funciones de agregación.
- Operación multifila: HAVING se utiliza en operaciones multifila (después de agrupar los datos), mientras que WHERE opera a nivel de fila individual antes de la agrupación.
Sintaxis: SELECT nombre_columna FROM nombre_tabla GROUP BY nombre_columna HAVING condición;






