摘要:
最近遇到一个情况,需要在内网系统中出一个统计报表。需要根据不同条件使用多个group by语句,需要将所有聚合的数据进行union操作来完成不同维度的统计查看。 知道发现了在SQL Server 2008之后引入了grouping sets这个对于group by的增强后,上面的需求实现起来就简单的多,下面我们用AdventureWork中的表作为demo来解释一下grouping sets. 假设我现在需要两个维度查询我的销售额度,查询T-SQL如下:而使用SQL Server 2008之后新增的grouping sets语句,仅仅需要这样写:值得注意的是,虽然上面使用grouping s. 阅读全文
posted @ 2012-02-02 13:54
指尖流淌
阅读(1014)
评论(0)
推荐(0)
摘要:
对于Select查询语句来说,通常情况下,为了是T-SQL代码更加简洁和刻度,在一个查询中应用另外的结果集都是通过视图而不是查询进行分解的,但是,视图作为系统对象存储在数据库中,那对于结果集仅仅需要在存储过程或是用户自定义函数中使用一次的时候,使用视图就显得有限奢侈了。 公用表达式(Common Table Expression)是SQL Server2005版本之后引入的一个特性,.CTE可以看做是一个临时的结果集,可以再接下来的select,insert,update,delete,merge语句中被多次使用,使用公用表达式可以让语句更加清晰简练。 初次之外,根据微软对CTE好处的描述,. 阅读全文
posted @ 2012-02-02 13:31
指尖流淌
阅读(781)
评论(0)
推荐(0)