Contenido del curso
Bases de Datos: De Cero a Experto

🎯 Objetivo:

Aprender a usar funciones de agregación para resumir datos y combinarlas con GROUP BY para obtener información valiosa de nuestras tablas.


🧠 ¿Qué son las funciones de agregación?

Son funciones que resumen grupos de datos, devolviendo un solo valor por grupo. Las más comunes son:

Función ¿Qué hace?
COUNT() Cuenta cuántos registros hay
SUM() Suma valores numéricos
AVG() Calcula el promedio
MAX() Devuelve el valor más alto
MIN() Devuelve el valor más bajo

🧪 Ejemplo práctico: tabla ventas

id_venta id_cliente total fecha
1 1 25000 2024-06-01
2 2 12000 2024-06-02
3 1 8000 2024-06-05

🔍 ¿Cuántas ventas hay?

sql
SELECT COUNT(*) AS total_ventas
FROM ventas;

🔹 Resultado: 3


🔍 ¿Cuánto se ha vendido en total?

sql
SELECT SUM(total) AS total_ingresos
FROM ventas;

🔹 Resultado: 45000


🔍 ¿Cuál fue la venta más alta?

sql
SELECT MAX(total) AS mayor_venta
FROM ventas;

🔹 Resultado: 25000


🔍 ¿Promedio de ventas?

sql
SELECT AVG(total) AS promedio_ventas
FROM ventas;

🔹 Resultado: 15000


🧩 Agrupaciones con GROUP BY

Cuando queremos aplicar funciones por grupo, usamos GROUP BY.

🔍 ¿Cuántas ventas hizo cada cliente?

sql
SELECT id_cliente, COUNT(*) AS cantidad_ventas
FROM ventas
GROUP BY id_cliente;

🔹 Resultado:

id_cliente cantidad_ventas
1 2
2 1

🔍 ¿Total vendido por cliente?

sql
SELECT id_cliente, SUM(total) AS total_cliente
FROM ventas
GROUP BY id_cliente;

🔹 Resultado:

id_cliente total_cliente
1 33000
2 12000

🔍 Agrupar por fecha:

sql
SELECT fecha, SUM(total) AS total_dia
FROM ventas
GROUP BY fecha
ORDER BY fecha;

🔹 Útil para reportes diarios o gráficos.


📝 Fragmento práctico

  1. Muestra cuántos productos hay en la tabla productos.

  2. Calcula el precio promedio de todos los productos.

  3. Agrupa por categoría y muestra la suma total por categoría.


💬 Cierre de la lección

Estas funciones permiten resumir grandes volúmenes de datos en segundos.
Son clave para reportes, dashboards, KPIs y análisis en todas las industrias.


✅ Revisión rápida

  • ¿Qué diferencia hay entre COUNT(*) y COUNT(columna)?

  • ¿Para qué sirve GROUP BY?

  • ¿Cómo mostrarías las ventas totales por día?

Scroll al inicio