Servidor SQL: cláusula GROUP BY

Los datos expuestos en este blog, son solo de índole informativo. Por favor realiza siempre una copia de seguridad antes de realizar cualquier cambio en tu proyecto.

Servidor SQL: cláusula GROUP BY

Este tutorial de SQL Server describe cómo usar Cláusula GROUP BY Sintaxis y ejemplos en SQL Server (Transact-SQL).

describir

La cláusula GROUP BY de SQL Server (Transact-SQL) se usa en una instrucción SELECT para recopilar datos en varios registros y agrupar los resultados por una o más columnas.

sintaxis

La sintaxis de la cláusula GROUP BY en SQL Server (Transact-SQL) es:

SELECT expression1, expression2, ... expression_n, 
       aggregate_function (expression)
FROM tables
[WHERE conditions]
GROUP BY expression1, expression2, ... expression_n;

parámetro o parámetro

expresión1, expresión2, … expresión_n Expresiones que no están encapsuladas en funciones agregadas y deben incluirse en la cláusula GROUP BY. La función agregada puede ser una función como SUM, COUNT, MIN, MAX o AVG. tabla La tabla de la que desea recuperar registros. Debe aparecer al menos una tabla en la cláusula FROM. La condición WHERE es opcional. Para seleccionar las condiciones que debe cumplir un registro.

Ejemplo: uso de la función SUMA

Veamos un ejemplo de consulta GROUP BY de SQL Server usando la función SUM.

Por ejemplo:

SELECT product_name, SUM(quantity) AS "Total quantity"
FROM products
GROUP BY product_name;

Este ejemplo de SQL Server GROUP BY usa la función SUM para devolver product_name y la cantidad total (para product_name).

Debido a que enumeró una columna (el campo nombre_producto) en la declaración SELECT que no estaba encapsulada en la función SUM, debe usar la cláusula GROUP BY. Por lo tanto, el campo nombre_producto debe aparecer en la cláusula GROUP BY.

Ejemplo: uso de la función CONTAR

Veamos cómo usar la cláusula GROUP BY con la función COUNT.

Por ejemplo:

SELECT manager_id, COUNT(*) AS "Number of employees"
FROM employees
WHERE last_name="Anderson"
GROUP BY manager_id;

Este ejemplo de GROUP BY usa la función COUNT para devolver el manager_id y el número de empleados cuyo apellido es “Anderson”.

Ejemplo: uso de la función MIN

A continuación, veamos cómo usar la cláusula GROUP BY con la función MIN.

Por ejemplo:

SELECT product_type, MIN(quantity) AS "Lowest quantity"
FROM products
GROUP BY product_type;

Este ejemplo de GROUP BY usa la función MIN para devolver un tipo de producto y el número mínimo de ese tipo de producto.

Ejemplo: uso de la función MAX

Finalmente, veamos cómo usar la cláusula GROUP BY con la función MAX.

Por ejemplo:

SELECT department, MAX(salary) AS "Highest salary"
FROM employees
GROUP BY department;

Este ejemplo de GROUP BY usa la función MAX para devolver el nombre de cada departamento y el salario más alto en ese departamento.