0Pricing
SQL Academy · Lección

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 countries

SUM

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;   -- alphabetic

Funciones 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;   -- NULL

Combinar 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

  1. COUNT, SUM, AVG, MIN y MAX
  2. GROUP BY con una o varias columnas
  3. HAVING frente a WHERE
  4. Errores habituales: valores NULL en agregaciones
← Volver a SQL Academy