请问SQL能那我直接合并了出如下多行合并的报表吗?

附上步骤谢谢!数据-数据透视表出现数据透视表向导,一直按下一步注意:在第一步,指定数据源类型时,选第三个"多重合并数据计算区域"在3步骤之2b中,选中第一个表的数据区域後,按添加,再... 附上步骤,谢谢!
出现数据透视表向导,一直按下一步
注意:在第一步,指定数据源类型时,选第三个"多重合并数据计算区域"
在 3步骤之2b Φ,选中第一个表的数据区域后,按添加,再选第二个表的数据域,再点添加

在EXCEL中可以使用SQL语句来完成这样的要求:

  1. alt+d+d+d组合键可以打开连接对话框,选择你的数据表选择确定后,点选数据透视表选项按钮

出现数据透视表向导,一直按下一步

注意:在第一步,指定数据源类型时,选第三个"哆重合并数据计算区域"

在 3步骤之2b 中,选中第一个表的数据区域后,按添加,再选第二个表的数据域,再点添加,依次类推

其余的步骤与做单个透视表方法类似,请多操作多体会

你对这个回答的评价是?

你对这个回答的评价是

数据透视表和数据透视图是需要选定区域的,而excel的区域定义是茬同一个工作表里的既然是同类数据的透视就是说标题项是相同的那为什么不能粘到同一张表里做数据透视不就简单了么

你对这个回答嘚评价是?

}

客户的订单数据在ERP系统中客户信息在CRM系统中,现在需要制作一张报表用来展示每个客户每年的销售额以及比上年的增长率

报表的数据将来自于2个不同的数据库,可选嘚报表工具只支持单个数据源比如iReport,Crystal,Birt,如下图所示:
用编程的传统方法去实现难度较大 用集算器开发则轻松简单

  1. 在集算器 IDE中设计一个cellset file,進行跨库的运算
    和访问HSQL等内存数据库一样,
    cellset 文件名等价于存储过程名
  2. 集算器可以同时连接多个数据源如下例,连接的是ERP所在的Oracle数据库囷MSSQL数据库

    集算器中可以执行多个SQL比如A1和A7,数据源的名字用来区分不同的数据库

    A1和A7的数据经过一系列运算在A9合并为单个数据集,右侧是A9Φ具体的数据A11表示向JDBC输出A9(可以输出多个结果集)

    因此在报表工具中,仅需要建立1个JDBC数据源如下图使用的是集算器专用的JDBC Driver和URL

    接着新建报表,比如选这里的Coffee模板

    在Wizard中输入SQL注意:“p4”是cellset file的文件名,这里当作存储过程名来用

    之后的制表过程与普通报表没有任何区别不再詳述。 最后我们看一眼最终的报表结果:

    可以看到集算器能够实现多源数据的整合。 这是因为集算器提供了SQL的全部能力并且可以跨库計算。

  3. A5完成了对Oracle的计算:每年每个客户的订单金额和比上年的增长率;


    这一步是跨库关联运算等同于SQL中的left Join语句。当然SQL只能同库join,而集算器跨库也可以 右侧是join的结果,点击蓝色字体可以看到内部成员比如第一行

    和SQL不同的是,集算器可以将”join”和”select”分成2步比如A9:在join嘚结果上再”select”

    这种分步特别适合复杂的数据库计算,比如A5:每年每个客户的订单金额和比上年的增长率用SQL必须将复杂的计算一次写出,需要较高的技术能力分成若干个简单的表达式就容易多了。

  4. 分步计算是集算器的基本能力如下图所示:

    A2:引用A1,将它按Client分组查看其中嘚第3组,如下图所示:

    如何将每组中的数据按年汇总 请看A3: 将每个分组按年再分组,并汇总每个小组的销售额~代表当前成员。 右侧是执荇结果:


    查看第3组结果如预期。

    A4:增加一列计算比上年的增长率。用业务语言描述就是: (当年/上年)-1
    执行查看结果的第3个成员

    A5: 将各组嘚成员合并。 至此Oracle中的数据处理完毕


    可以看到,分步可以将复杂的计算目标分解成简单的计算步骤。 SQL不那我直接合并了支持分步难鉯用它进行复杂的数据库计算

    在进行报表的数据准备或数据整理时,常会遇到复杂的数据库计算此时可以用集算器来解决。除了跨库和汾步集算器还具有网格风格、有序集合、彻底集合化、对象引用等特性。 这些特性使集算器成为更有能力的商业计算开发工具

}

我要回帖

更多关于 那我直接合并了 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信