COUNT, SUM, AVG, MIN y MAX
Use las cinco funciones de agregación fundamentales, comprenda COUNT(*) frente a COUNT(columna) y sepa cómo trata cada una los valores NULL.
COUNT, SUM, AVG, MIN y MAX es una lección gratuita de SQL Academy en CoddyKit. Esta es la lección 1 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de SQL Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de SQL Academy incluye 4 lecciones en total.
Qué hacen las funciones de agregación
Una función de agregación combina muchas filas en un único valor. Algunos ejemplos son: ingresos totales, valoración media y fecha máxima.
COUNT
Cuenta filas. Hay dos variantes:
SELECT COUNT(*) FROM users; -- counts ALL rows
SELECT COUNT(email) FROM users; -- counts rows where email IS NOT NULL
SELECT COUNT(DISTINCT country) FROM users; -- distinct non-NULL countriesSUM
Suma una columna numérica. Los valores NULL se omiten:
SELECT SUM(total) FROM orders;
SELECT SUM(total) FROM orders WHERE user_id = 42;AVG
Calcula la media aritmética. Los valores NULL se omiten, por lo que AVG(x) equivale a SUM(x)/COUNT(x), no a SUM(x)/COUNT(*):
SELECT AVG(rating) FROM reviews;MIN y MAX
El valor no NULL más pequeño y el más grande. Funciona con números, fechas y cadenas, es decir, con cualquier valor comparable:
SELECT MIN(created_at), MAX(created_at) FROM orders;
SELECT MIN(name), MAX(name) FROM users; -- alphabeticFunciones de agregación y NULL
Todas las funciones de agregación, excepto COUNT(*), omiten las entradas NULL. AVG, SUM, MIN y MAX devuelven NULL cuando no existe ninguna entrada que no sea NULL.
-- Suppose the table is empty or all rating is NULL:
SELECT AVG(rating) FROM reviews; -- NULLCombinar funciones de agregación
Varias funciones de agregación en una misma consulta: todas ven el mismo grupo:
SELECT COUNT(*) AS orders,
SUM(total) AS revenue,
AVG(total) AS avg_order,
MIN(total) AS smallest,
MAX(total) AS biggest
FROM orders
WHERE created_at >= NOW() - INTERVAL '30 days';DISTINCT dentro de funciones de agregación
Aplique DISTINCT antes de realizar la agregación:
SELECT COUNT(DISTINCT user_id) AS unique_buyers,
SUM(DISTINCT total) AS sum_of_distinct_totals
FROM orders;Funciones de agregación sin GROUP BY
Cuando usa una función de agregación sin GROUP BY, todo el conjunto de resultados forma un único grupo grande: se obtiene una sola fila.
Filtrar antes de agregar
WHERE reduce las filas de entrada antes de agregarlas:
-- Average of only large orders:
SELECT AVG(total) FROM orders WHERE total > 100;Cláusula FILTER (PostgreSQL)
Añada filtros individuales para cada función de agregación con la cláusula FILTER:
SELECT
COUNT(*) AS total_orders,
COUNT(*) FILTER (WHERE status = 'paid') AS paid_orders,
SUM(total) FILTER (WHERE status = 'paid') AS paid_revenue
FROM orders;Resumen
Las cinco funciones de agregación principales: COUNT, SUM, AVG, MIN, MAX.
- COUNT(*) cuenta filas; COUNT(col) omite NULL
- Las demás funciones de agregación omiten las entradas NULL
- Combínelas con WHERE / FILTER para realizar agregaciones condicionales
Comprobación rápida
Suponga que rating es NULL en 100 de 500 filas. ¿Entre cuántos valores divide AVG(rating)?
Preguntas frecuentes
¿La lección «COUNT, SUM, AVG, MIN y MAX» es gratis?
Sí — el texto completo de «COUNT, SUM, AVG, MIN y MAX» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de SQL Academy, actualiza a CoddyKit PRO. El curso de SQL Academy incluye 4 lecciones en total.
¿Qué aprenderé en «COUNT, SUM, AVG, MIN y MAX»?
Use las cinco funciones de agregación fundamentales, comprenda COUNT(*) frente a COUNT(columna) y sepa cómo trata cada una los valores NULL. Practicas SQL Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar SQL Academy?
No se requiere experiencia previa. SQL Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 1 de 4.
¿Cuánto tiempo toma la lección «COUNT, SUM, AVG, MIN y MAX»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de SQL Academy?
Sí. Cada lección de SQL Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- COUNT, SUM, AVG, MIN y MAX
- GROUP BY con una o varias columnas
- HAVING frente a WHERE
- Errores habituales: valores NULL en agregaciones