SQL

Tutorial SQL: Agrupación de resultados con GROUP BY

SQL group by: agrupación de datos. Aprende a agrupar datos en SQL utilizando la cláusula GROUP BY con ejemplos prácticos y detallados.

La cláusula GROUP BY en SQL se utiliza para agrupar filas que tienen los mismos valores en columnas específicas en grupos. Los resultados de una consulta que incluye una cláusula GROUP BY se denominan "conjunto de resultados agrupados".

La cláusula GROUP BY es a menudo útil en combinación con las funciones de agregación como SUM(), AVG(), MAX(), MIN() y COUNT() para obtener resúmenes de datos.

Por ejemplo, supóngase que se tiene la siguiente tabla de ventas:

ID_VentaProductoCantidadFecha   
1Manzana52023-07-31
2Banana82023-07-30
3Manzana 22023-07-30
4Banana62023-07-29
5Manzana 72023-07-29

1. Agrupar por una columna única

Supongamos que queremos obtener la cantidad total vendida para cada tipo de producto. Podemos usar la cláusula GROUP BY para agrupar las filas según el producto y luego usar la función SUM() para sumar las cantidades de cada grupo.

SELECT Producto, SUM(Cantidad) AS Cantidad_Total
FROM Ventas
GROUP BY Producto;

El resultado será:

ProductoCantidad_Total
Manzana14
Banana 14

2. Agrupar por múltiples columnas

Puede usarse la cláusula GROUP BY con más de una columna. Por ejemplo, si queremos saber la cantidad total de cada producto vendida en cada fecha, podemos agrupar por Producto y Fecha.

SELECT Producto, Fecha, SUM(Cantidad) AS Cantidad_Total
FROM Ventas
GROUP BY Producto, Fecha;

El resultado será:

ProductoFechaCantidad_Total
Manzana2023-07-315
Manzana2023-07-302
Manzana2023-07-297
Banana2023-07-308
Banana2023-07-296

Errores comunes y soluciones

Uno de los errores comunes al usar GROUP BY es incluir en SELECT columnas que no están en la cláusula GROUP BY ni encapsuladas en una función de agregación. Asegúrese de que todas las columnas en SELECT cumplan con estas reglas.

Conclusión

La cláusula GROUP BY es una herramienta poderosa en SQL para el análisis de datos. Permite a los usuarios agrupar y analizar conjuntos de datos de acuerdo con criterios específicos, facilitando la obtención de insights significativos a partir de grandes volúmenes de datos.

Certifícate en SQL con CertiDevs PLUS

Ejercicios de esta lección Agrupación de resultados con GROUP BY

Evalúa tus conocimientos de esta lección Agrupación de resultados con GROUP BY con nuestros retos de programación de tipo Test, Puzzle, Código y Proyecto con VSCode, guiados por IA.

Actualización de datos: UPDATE

Código

Creación y uso de procedimientos almacenados

Test

Uso de funciones agregadas: COUNT, SUM, AVG, MAX, MIN

Test

Tipos de datos

Test

Uso de índices y particiones

Test

Uso de vistas

Test

Uso de INNER JOIN, LEFT JOIN, RIGHT JOIN, FULL JOIN

Test

Sentencias INSERT

Código

Creación y uso de subqueries

Test

Uso de INNER JOIN, LEFT JOIN, RIGHT JOIN, FULL JOIN

Código

Instalación de MySQL

Test

Relaciones entre tablas

Código

Clasificación de resultados con ORDER BY

Test

Creación y manejo de usuarios y roles

Test

Eliminación de datos: DELETE

Código

Creación y uso de funciones

Test

Vaciar tablas y bases de datos: DROP

Test

Consultas básicas de selección: SELECT y WHERE

Test

Creación de bases de datos y tablas

Código

Filtrado de valores únicos con DISTINCT

Test

Alterar la estructura de tablas existentes: ALTER TABLE

Test

Creación de tablas e inserción de datos con SQL

Proyecto

Asignación y gestión de permisos

Test

Optimización de consultas

Test

Introducción a SQL

Test

Triggers y eventos

Test

Copias de seguridad y restauración de bases de datos

Test

Filtrado de grupos de resultados con HAVING

Test

Eliminación de datos: DELETE

Test

Inserción de datos: INSERT INTO

Test

Instalación de PostgreSQL

Test

Agrupación de resultados con GROUP BY

Test

Actualización de datos: UPDATE

Test

Renombrar tablas y bases de datos: RENAME

Test

Creación de bases de datos y tablas: CREATE DATABASE, CREATE TABLE

Test

Bases de datos y tablas

Test

Consultas básicas de selección SELECT y WHERE

Código

Relaciones entre tablas

Test

Todas las lecciones de SQL

Accede a todas las lecciones de SQL y aprende con ejemplos prácticos de código y ejercicios de programación con IDE web sin instalar nada.

Introducción A Sql

Introducción Y Entorno

Sublenguajes De Sql: Data Definition Language Y Data Manipulation Language

Introducción Y Entorno

Instalación De Mysql

Introducción Y Entorno

Instalación De Postgresql

Introducción Y Entorno

Tipos De Datos

Introducción Y Entorno

Bases De Datos Y Tablas

Introducción Y Entorno

Creación De Bases De Datos Y Tablas: Create Database, Create Table

Operaciones Básicas

Consultas Básicas De Selección: Select Y Where

Operaciones Básicas

Inserción De Datos: Insert Into

Operaciones Básicas

Actualización De Datos: Update

Operaciones Básicas

Eliminación De Datos: Delete

Operaciones Básicas

Clasificación De Resultados Con Order By

Filtros Y Clasificación

Filtrado De Valores Únicos Con Distinct

Filtros Y Clasificación

Uso De Funciones Agregadas: Count, Sum, Avg, Max, Min

Funciones Agregadas Y Agrupaciones

Agrupación De Resultados Con Group By

Funciones Agregadas Y Agrupaciones

Filtrado De Grupos De Resultados Con Having

Funciones Agregadas Y Agrupaciones

Relaciones Entre Tablas

Joins Y Subqueries

Uso De Inner Join, Left Join, Right Join, Full Join

Joins Y Subqueries

Creación Y Uso De Subqueries

Joins Y Subqueries

Alterar La Estructura De Tablas Existentes: Alter Table

Manipulación De Tablas Y Datos

Renombrar Tablas Y Bases De Datos: Rename

Manipulación De Tablas Y Datos

Vaciar Tablas Y Bases De Datos: Drop

Manipulación De Tablas Y Datos

Creación Y Uso De Funciones

Funciones Y Procedimientos Almacenados

Creación Y Uso De Procedimientos Almacenados

Funciones Y Procedimientos Almacenados

Creación Y Manejo De Usuarios Y Roles

Seguridad Y Administración De Bases De Datos Sql

Asignación Y Gestión De Permisos

Seguridad Y Administración De Bases De Datos Sql

Copias De Seguridad Y Restauración De Bases De Datos

Seguridad Y Administración De Bases De Datos Sql

Optimización De Consultas

Sintaxis Avanzada

Uso De Índices Y Particiones

Sintaxis Avanzada

Uso De Vistas

Sintaxis Avanzada

Triggers Y Eventos

Sintaxis Avanzada

Certificados de superación de SQL

Supera todos los ejercicios de programación del curso de SQL y obtén certificados de superación para mejorar tu currículum y tu empleabilidad.

En esta lección

Objetivos de aprendizaje de esta lección

  1. Comprender el propósito y uso de la cláusula GROUP BY en SQL para agrupar filas según los valores en columnas específicas.
  2. Conocer cómo combinar GROUP BY con funciones de agregación como SUM(), AVG(), MAX(), MIN() y COUNT() para obtener resultados sumarizados.
  3. Aprender a usar GROUP BY con una columna única para agrupar datos en categorías y realizar cálculos en cada grupo.
  4. Aprender a usar GROUP BY con múltiples columnas para agrupar datos en subgrupos más específicos y realizar cálculos sumarizados en cada subgrupo.