Saltar al contenido principal
Básico
10 min de lectura

GROUP BY

Agrupa filas que comparten valores

GROUP BY agrupa filas que tienen los mismos valores en columnas específicas, permitiendo aplicar funciones de agregación.

Sintaxis

sql
1SELECT columna, función_agregada(columna)2FROM tabla3GROUP BY columna;

Ejemplos

sql
1-- Contar usuarios por ciudad2SELECT ciudad, COUNT(*) as total3FROM usuarios4GROUP BY ciudad;5 6-- Precio promedio por categoría7SELECT categoria, AVG(precio) as precio_promedio8FROM productos9GROUP BY categoria;10 11-- Total de ventas por producto12SELECT producto_id, SUM(cantidad) as total_vendido13FROM ventas14GROUP BY producto_id;

Sintaxis

Sintaxis
sql
1SELECT columna_agrupada, función_agregada(...)2FROM tabla3GROUP BY columna_agrupada;

Ejemplos

Agrupar por ciudad

Contar usuarios en cada ciudad

Ejemplo
sql
1SELECT ciudad, COUNT(*) as total_usuarios2FROM usuarios3GROUP BY ciudad4ORDER BY total_usuarios DESC;

Resultado:

| ciudad    | total_usuarios |
|-----------|----------------|
| Madrid    | 15             |
| Barcelona | 12             |
| Valencia  | 8              |
| Sevilla   | 5              |