Tutorial SQL

INICIO SQL Introducción a SQL Sintaxis SQL Seleccionar SQL SQL Seleccionar Distinto SQL donde SQL y, o no Orden SQL por Insertar SQL en Valores nulos de SQL Actualización SQL Eliminar SQL SQL Seleccionar parte superior SQL mínimo y máximo Recuento de SQL, Promedio, Suma SQL como Comodines de SQL SQL en SQL entre Alias ​​SQL Uniones SQL Combinación interna de SQL Unión izquierda de SQL Unión derecha de SQL Unión completa de SQL Unión automática de SQL Unión SQL Grupo SQL por SQL teniendo SQL existe SQL Cualquiera, Todo SQL Seleccionar en Insertar SQL en Seleccionar Caso SQL Funciones nulas de SQL Procedimientos almacenados de SQL Comentarios SQL Operadores SQL

Base de datos SQL

SQL Crear base de datos Base de datos de caída de SQL Base de datos de copia de seguridad de SQL Crear tabla SQL Tabla desplegable de SQL Tabla de modificación de SQL Restricciones SQL SQL no nulo SQL único Clave principal de SQL Clave foránea de SQL Comprobación SQL Valor predeterminado de SQL Índice SQL Incremento automático de SQL Fechas SQL Vistas SQL Inyección SQL Alojamiento SQL Tipos de datos SQL

Referencias SQL

Palabras clave de SQL Funciones MySQL Funciones del servidor SQL Funciones de MS Access Referencia rápida de SQL

Ejemplos SQL

Ejemplos SQL Cuestionario de SQL Ejercicios SQL Certificado SQL

Sentencia SQL GROUP BY


La instrucción SQL GROUP BY

La GROUP BYdeclaración agrupa filas que tienen los mismos valores en filas de resumen, como "encontrar la cantidad de clientes en cada país".

La GROUP BYdeclaración se usa a menudo con funciones agregadas ( COUNT(), MAX(), MIN(), SUM(), AVG()) para agrupar el conjunto de resultados por una o más columnas.

GRUPO POR Sintaxis

SELECT column_name(s)
FROM table_name
WHERE condition
GROUP BY column_name(s)
ORDER BY column_name(s);

Base de datos de demostración

A continuación se muestra una selección de la tabla "Clientes" en la base de datos de ejemplo de Northwind:

CustomerID CustomerName ContactName Address City PostalCode Country
1

Alfreds Futterkiste Maria Anders Obere Str. 57 Berlin 12209 Germany
2 Ana Trujillo Emparedados y helados Ana Trujillo Avda. de la Constitución 2222 México D.F. 05021 Mexico
3 Antonio Moreno Taquería Antonio Moreno Mataderos 2312 México D.F. 05023 Mexico
4

Around the Horn Thomas Hardy 120 Hanover Sq. London WA1 1DP UK
5 Berglunds snabbköp Christina Berglund Berguvsvägen 8 Luleå S-958 22 Sweden


SQL GROUP BY Ejemplos

La siguiente instrucción SQL enumera el número de clientes en cada país:

Ejemplo

SELECT COUNT(CustomerID), Country
FROM Customers
GROUP BY Country;

La siguiente instrucción SQL enumera el número de clientes en cada país, ordenados de mayor a menor:

Ejemplo

SELECT COUNT(CustomerID), Country
FROM Customers
GROUP BY Country
ORDER BY COUNT(CustomerID) DESC;

Base de datos de demostración

A continuación se muestra una selección de la tabla "Pedidos" en la base de datos de ejemplo de Northwind:

OrderID CustomerID EmployeeID OrderDate ShipperID
10248 90 5 1996-07-04 3
10249 81 6 1996-07-05 1
10250 34 4 1996-07-08 2

Y una selección de la tabla "Transportistas":

ShipperID ShipperName
1 Speedy Express
2 United Package
3 Federal Shipping

GROUP BY con JOIN Ejemplo

La siguiente instrucción SQL enumera la cantidad de pedidos enviados por cada remitente:

Ejemplo

SELECT Shippers.ShipperName, COUNT(Orders.OrderID) AS NumberOfOrders FROM Orders
LEFT JOIN Shippers ON Orders.ShipperID = Shippers.ShipperID
GROUP BY ShipperName;

Ponte a prueba con ejercicios

Ejercicio:

Enumere el número de clientes en cada país.

SELECT (CustomerID),
Country
FROM Customers
;