SQL 2012 Group By Rollup, Grouping】的更多相关文章

GO alter proc [zsp_BranchsData] as begin /* CREATE TABLE [原始机构数据] ( [序号] [varchar](50) NULL, [一级分行号] [varchar](50) NULL, [一级分行名称] [varchar](50) NULL, [二级分行号] [varchar](50) NULL, [二级分行名称] [varchar](50) NULL, --[上级机构号] [varchar](50) NULL, --[上级机构名称] [v…
干oracle 047文章12当问题,经验group by 声明.因此邂逅group by  rollup,decode,grouping,nvl,nvl2,nullif,RATIO_TO_REPORT等一下. 1. decode  与if...then,case...when...这类流数据语句功能差点儿相同 decode(条件,值1,返回值1,值2,返回值2,...值n,返回值n,缺省值) 该函数的含义例如以下: IF 条件=值1 THEN RETURN(值1) ELSIF 条件=值2 TH…
在我们制作报表的时候常常需要分组聚合.多组聚合和总合.如果通过另外的T-SQL语句来聚合难免性能太差.如果通过报表工具的聚合功能虽说比使用额外的T-SQL语句性能上要好很多,不过不够干脆,还是需要先生成整个结果集然后再聚合,而且最最重要的时很多情况下报表的聚合功能可能没办法达到我们需要的效果.GROUPING SETS, CUBE, ROLLUP, GROUPING, GROUPING_ID这几个聚合函数的作用就是在原始语句的基础上完成很多像财务报表需要的聚合功能. GROUPING SETS相…
T-SQL 多个分组集共有三种 GROUPING SETS, CUBE, 以及ROLLUP, 其中 CUBE和ROLLUP可以当做是GROUPING SETS的简写版 示例数据库下载: http://files.cnblogs.com/files/haseo/TSQL2012.rar GROUPING SETS 列出所有你设置的分组集 SELECT shipperid, YEAR(shippeddate) AS shipyear, COUNT(*) AS numorders FROM Sales…
1.ROW_NUMBER() OVER函数的基本用法用法 http://www.cnblogs.com/fxgachiever/archive/2010/09/15/1826792.html 2.DeCode函数: http://www.cnblogs.com/juddhu/archive/2012/03/07/2383101.html 3.GROUP BY ROLLUP http://hi.baidu.com/420350501/item/a01fdf3ed3a5bb82f4e4ad44 ht…
GROUP_ID 首先我们看看官方的解释: 大意是GROUP_ID用于区分相同分组标准的分组统计结果. 解释起来比较抽象,下面我们来看看具体的案例. 例1:单一分组 SQL> select group_id(),deptno,sum(sal) from emp group by rollup(deptno); GROUP_ID() DEPTNO SUM(SAL) ---------- ---------- ---------- rollup(deptno)只是一个唯一的分组,所以产生的group…
SQL合计汇总实现数据N+1条显示: 注意group by rollup((ename, job, empno))!!! select decode(grouping(ename) + grouping(job) + grouping(empno),               3,               '合计',               ename) ename,        decode(grouping(ename) + grouping(job) + grouping(em…
第8章 SQL高级处理:8-2 GROUPING运算符 ■ GROUPING SETS——取得期望的积木● 只使用GROUP BY子句和聚合函数是无法同时得出小计和合计的.如果想要同时得到,可以使用GROUPING运算符. ● 理解GROUPING运算符中CUBE的关键在于形成“积木搭建出的立方体”的印象. ■同时计算出合计行 如果想要获得那样的结果,通常的做法是分别计算出合计行和按照商品种类进行汇总的结果,然后通过 UNION ALL 连接在一起.代码清单8-11 分别计算出合计行和汇总结果再…
首先我们创建一个示例表: Create table test_group (v_name varchar2(4) ,v_size varchar2(4) ,v_color varchar2(4) ,n_num number(4) ); --插入数据 insert into test_group select '桌子','大','红',10 from dual union all select '桌子','大','绿',10 from dual union all select '桌子','小',…
group by rollup() 按分组合计 select grouping(status),status,owner,object_type,count(*) from dba_objects where owner not in ('SYS','SYSTEM') group by rollup (status,owner,object_type) order by status,owner,object_type; 经典分类查询语句: select object_type,count(*)…