viernes, 15 de mayo de 2015

Ejercicios con Rollup y Cube en SQL Server



1) Realizar una consulta que resuma la cantidad de artículos pedidos por cada índice de producto y número de pedido. Realizando un cálculo acumulativo. 

SELECT PRODUCTID AS [PRODUCTO]
,ORDERID AS [Nº PEDIDO]
,SUM(QUANTITY) AS [SUMA TOTAL]
FROM [ORDER DETAILS]
GROUP BY PRODUCTID, ORDERID
WITH ROLLUP
ORDER BY PRODUCTID, ORDERID


2) Modificación al ejercicio anterior: Realizar el mismo resumen pero únicamente para el producto cuyo id es 50 

SELECT PRODUCTID AS [PRODUCTO]
,ORDERID AS [Nº PEDIDO]
,SUM(QUANTITY) AS [SUMA TOTAL]
FROM [ORDER DETAILS]
WHERE PRODUCTID = 50
GROUP BY PRODUCTID, ORDERID
WITH ROLLUP
ORDER BY PRODUCTID, ORDERID


3) Realizar un resumen por medio de CUBE y de GROUPING sobre la modificación del ejercicio anterior de tal manera que sea posible obtener un resumen por producto y por pedido.

SELECT PRODUCTID AS [PRODUCTO]
,GROUPING(PRODUCTID) AS [GRUPO PRODUCTO]
,ORDERID AS [Nº PEDIDO]
,GROUPING(ORDERID) AS [GRUPO PEDIDO]
,SUM(QUANTITY) AS [SUMA TOTAL]
FROM [ORDER DETAILS]
WHERE PRODUCTID = 50
GROUP BY PRODUCTID,ORDERID
WITH CUBE
ORDER BY PRODUCTID,ORDERID


¿Qué filas son de resumen? ¿Cuáles el resumen por producto y cuáles por pedido?


Espero haber ayudado en algo. Hasta la próxima oportunidad!







No hay comentarios:

Publicar un comentario en la entrada