T-SQL 使用运行聚合
运行聚合,是随着时间积累值的聚合。
在本例中,我们假设存在ordertotalbyyear视图,该视图显示按年的总订单数量,查看一下其中的内容:
SELECT orderyear,qty FROM ordertotalbyyear 输出如下 order qty 2007 25489 2008 16247 2006 9581 假设需要返回每年的订单年度、数量和经过年度的运行总量, 也就是说,每一年,计算到之前年度的数量之和。所以,视图中最早年度2006的记录,运行总量等于 当年的数量,第二年2007,运行总量是第一年加上第二年之和,依次类推。 要完成此任务,可以通过查询视图的一个实例,返回每年的订单年度和数量,然后, 对查询的第二个实例使用一个相关子查询来计算运行问题,此子查询筛选小于或等于当前年度的所有年度, 并对数量进行求和: SELECT orderyear,qty, (SELECT SUM(02.qty) FROM ordertotalbyyear AS 02 WHERE 02.orderyear<=01.orderyear) AS runqty FROM ordertotalyear AS 01 ORDER BY orderyear 此查询返回以下输出: orderyear qty runqty 2006 9581 9581 2007 25489 35070 2008 16237 51317
本文出自 “成长基石” 博客,请务必保留此出处http://jeffxi.blog.51cto.com/8540759/1641120
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。