Índice
1. Introducción2. Palabras Clave
3. Problema
4. Solución
5. Discusión de la Solución
5.1 Operador GROUP BY
6. Práctica: Creación Grupos de Resumen
7. Conclusiones
8. Literatura & Enlaces
1. Introducción
El propósito de esta nueva receta T-SQL es enseñar al programador a resumir una columna con respecto a cada cambio en otra columna. La sección práctica demuestra este tipo de operación con el reporte de la cantidad total de órdenes de venta por cada día de un mes en específico.
2. Palabras Clave
- Resumen
- T-SQL
3. Problema
Reportar el total de ventas diarias para un mes dado.
4. Solución
T-SQL cuenta con los operadores GROUP BY para crear grupos de resumen.
5. Discusión de la Solución
5.1 Operador GROUP BY
El operador GROUP BY agrupa un conjunto de registros/filas. Esta agrupación se lleva a cabo con la especificación de una o más columnas o expresiones. Por cada una de los grupos se retorna una fila. Esta operación se relaciona con funciones de agregación; i.e., SUM(), AVG(), etc.
6. Práctica: Creación Grupos de Resumen
El código SQL que viene a continuación totaliza las ventas diarias para el mes de julio de 2015.
SELECT OrderDate AS 'Fecha Orden',
SUM(TotalDue) AS 'Total por día'
FROM Sales.SalesOrderHeader
WHERE OrderDate >= '2005-07-01T00:00:00'
AND OrderDate < '2005-08-01T00:00:00'
GROUP BY OrderDate;
El operador GROUP BY agrupa las órdenes de compra por día para el mes de julio de 2015. La cláusula WHERE especifica el rango de la fecha. Por cada día del mes de julio se totaliza las ventas a través del operador de agregación SUM().
7. Conclusiones
El operador GROUP BY facilita la agrupación de registros para aplicar operaciones de agregación -suma promedio, por ejemplo-.
En la tercera receta T-SQL de la serie Agrupación y Resumen el programador comprenderá cómo restringir un resultado a grupos de interés a través del operador HAVING.
8. Literatura & Enlaces
Brimhall, J., Dye, D., Gennick, J., Roberts, A., Sheffield, W. (2012). SQL Server 2012 T-SQL Recipes - A Problem-Solution Approach. United States: Apress.GROUP BY (Transact-SQL) (2016, julio 9). Recuperado desde: https://msdn.microsoft.com/en-us/library/ms177673.aspx
V
No hay comentarios:
Publicar un comentario
Envíe sus comentarios, dudas, sugerencias, críticas. Gracias.