Funciones Básicas de Agregado
COUNT()
Cuenta el número de filas o valores no nulos en un conjunto de datos.
FROM Clientes;
SELECT COUNT(Email) AS ClientesConEmail
FROM Clientes;
Determinar cuántos clientes tienen información de contacto completa para una campaña de marketing.
SUM()
Calcula la suma total de los valores en una columna numérica.
FROM Pedidos
WHERE YEAR(Fecha) = 2023;
Calcular los ingresos totales generados en el último trimestre para el reporte financiero.
AVG()
Calcula el valor promedio de una columna numérica, ignorando valores NULL.
FROM Productos
WHERE CategoriaID = 5;
Determinar el ticket promedio de compra por cliente para ajustar estrategias de precios.
Funciones Avanzadas de Agregado
MAX()
Devuelve el valor máximo de una columna.
FROM Clientes;
MIN()
Devuelve el valor mínimo de una columna.
FROM Productos;
Agrupación de Datos con GROUP BY
Las funciones de agregado muestran todo su potencial cuando se combinan con la cláusula GROUP BY, permitiendo agrupar resultados por categorías.
SELECT CategoriaID, SUM(Ventas) AS VentasTotales
FROM Productos
GROUP BY CategoriaID
ORDER BY VentasTotales DESC;
SELECT ClienteID, YEAR(Fecha) AS Año, COUNT(*) AS TotalPedidos
FROM Pedidos
GROUP BY ClienteID, YEAR(Fecha)
HAVING COUNT(*) > 5;
Buenas Prácticas
- Utiliza COUNT(1) en lugar de COUNT(*) para mejor rendimiento en tablas grandes
- Considera el uso de FILTER o WHERE para excluir valores nulos antes de aplicar agregaciones
- Para promedios, ten en cuenta cómo los valores nulos pueden afectar tus resultados
- Usa GROUP BY junto con HAVING para filtrar resultados agregados
- Considera el uso de índices en columnas frecuentemente usadas en cláusulas GROUP BY