1.使用CUBE根据GROUP BY子句中的列来为结果集增加汇总值;
CUBE为结果集增加行,根据GROUP BY子句巾的列来汇总总数值。下面示例演示了一个根据产品放置的货架束返回产品总数量的查询:
SELECT i.Shelf,SUM(i.Quantity) Total
FROM Production.ProductInventory i
GROUP BY CUBE(i.Shelf)
在下一个查询中,我们将LocationID增加剑SELECT和GROUP BY子句中:
USE AdventureWorks
go
SELECT i.Shelf,i.LocationID,Sum(i.Quantity) Total
FROM Production.ProductInventory i
GROUP BY CUBE(i.Shelf,i.LocationID)
2.使用ROLLUP和GROUP BY,根据GROUP BY子句中列的次序增加分层的数据汇总:
USE AdventureWorks
go
SELECT i.Shelf,p.Name,SUM(i.Quantity) Total
FROM Production.ProductInventory i
INNER JOIN Production.Product p ON
i.ProductID=p.ProductID
GRO