IOKELU
Nivel: Avanzado
💡 Prueba agregaciones avanzadas:
Puedes ejecutar cualquier consulta en nuestra consola interactiva: Abrir consola SQL →

Funciones de agregación avanzadas en SQL

Las funciones de agregación avanzadas permiten realizar análisis complejos, métricas profesionales y cálculos de alto nivel. Son esenciales en reportes, dashboards, analítica y sistemas empresariales.

1. Repaso de agregaciones básicas


SELECT COUNT(*) FROM ventas;
SELECT SUM(cantidad) FROM ventas;
SELECT AVG(precio) FROM productos;
SELECT MIN(precio), MAX(precio) FROM productos;
    

2. Agregaciones con DISTINCT


SELECT COUNT(DISTINCT cliente_id) AS clientes_unicos
FROM ventas;
    

3. Filtrado avanzado con HAVING


SELECT cliente_id, SUM(cantidad) AS total
FROM ventas
GROUP BY cliente_id
HAVING SUM(cantidad) > 100;
    

4. ROLLUP


SELECT categoria, producto, SUM(cantidad)
FROM ventas
GROUP BY ROLLUP(categoria, producto);
    

5. CUBE


SELECT categoria, producto, SUM(cantidad)
FROM ventas
GROUP BY CUBE(categoria, producto);
    

6. GROUPING SETS


SELECT categoria, producto, SUM(cantidad)
FROM ventas
GROUP BY GROUPING SETS (
    (categoria),
    (producto),
    (categoria, producto)
);
    

7. Percentiles y estadísticas


SELECT
    PERCENTILE_CONT(0.5) WITHIN GROUP (ORDER BY precio) AS mediana,
    PERCENTILE_CONT(0.9) WITHIN GROUP (ORDER BY precio) AS p90
FROM productos;
    

8. Ejemplos prácticos


-- Ventas por cliente y totales
SELECT cliente_id, SUM(cantidad)
FROM ventas
GROUP BY ROLLUP(cliente_id);
    

-- Estadísticas de precios
SELECT
    AVG(precio) AS promedio,
    STDDEV(precio) AS desviacion,
    VARIANCE(precio) AS varianza
FROM productos;
    

9. Ejercicios para practicar

10. Mini‑proyecto: Reporte empresarial avanzado


SELECT categoria, producto, SUM(cantidad)
FROM ventas
GROUP BY GROUPING SETS (
    (categoria),
    (producto),
    (categoria, producto)
);
    

11. Errores comunes

12. Preguntas frecuentes

¿ROLLUP y CUBE funcionan en todas las bases?

Depende del motor, pero la mayoría los soportan.

¿Las agregaciones avanzadas son costosas?

Sí, requieren índices y optimización.