水晶报表中几种交叉表的实现方法 (作者阿泰)
交叉表,顾名思义,就是行和列交叉,用于将行上的数据,作为列指标来呈现。
用一个图直观的说明一下,就是将图1中的数据样式
最终呈现为如图2的效果
实际在使用中,我们可以用两种方式来实现这个效果
一是在数据库端用SQL将数据组织成交叉表,然后对这个数据以普通的报表形式呈现。
在这里,我摘录了网上一篇写的比较直白的文章,请参考此链接。
http://server.chinabyte.com/474/2591974.shtml
根据数据的情况,交叉后的列可能是固定的,也可能是不固定的
要注意写法,还要注意不同的数据库的SQL也是不一样的。如SQL Server和Oracle就有不同。
这里主要是提供个思路。
二是依靠水晶报表来直接实现,我在文章的最后提供了一个操作视频,大家可以看实际的操作步骤。
在这里需要说明一下的是,不是所有的数据,都那么标准,所以需要做一些修正。
水晶报表不仅仅支持从表里取数据,还支持View和SQL命令,存储过程等
所以可以使用View或者SQL命令来实现,在视频的例子中,我就用了这个例子
原始数据是这样的(图3),
为了适用交叉表,将其修正为图1所示。
我做了View来简化后续的操作,对于后续操作来说,使用表和view的效果是一样的。
view脚本为:
UNION
select 年份,地区,指标,'最小值' as 数值类别,最小值 as 数值 from test_4;
在视频最后,我对交叉表上的一些设置进行了操作,大家可以参考。如:
如何去除行、列上的合计字段
如何去掉交叉表左上角的缺角等一些基本操作
特别说明一下,要从交叉表导出一张完美的Excel是比较困难的
如果有这种需要,建议使用使用SQL交叉的方式,用一般的报表方式来实现.
请在此处下载操作视频,解压缩密码为:babyt
/Files/babyt/CR20080505.rar
(本视频为http://topic.csdn.net/u/20080505/17/2ff3406c-9240-40ef-b361-1490aa802581.html而作,比一般性的交叉表稍嫌复杂)
水晶报表中几种交叉表的实现方法 (作者阿泰)相关推荐
- 在水晶报表中实现任意选择指定字段显示-模板及C#升级版
前文<在水晶报表中实现任意选择指定字段显示>中有朋友留言说是有无C#版本,最近有时间,重写了一下. 一是使用了VS2005 C#2.0 + Crystal Report 2008,另外就是 ...
- 水晶报表中如何创建自定义的纸张大小格式?
问题 水晶报表中使用一个自定义的纸张类型格式(使用预先定义的纸张格式显示或者打印一个报表)? 解决方法 要创建一个自定义的纸张格式,来完成你工作中所使用的特殊纸张.在你开始工作之前,你必须确认你的打印 ...
- 在水晶报表中动态显示任意格式的图片
在水晶报表中动态显示任意格式的图片 如何在水晶报表中动态显示任意格式的图片 前段时间,Accounting 项目内需要在水晶报表中动态显示任意格式的图片.但是,水晶报表只支持OleDb的 ...
- mysql小计_Mysql必读用SQL实现统计报表中的小计与合计的方法详解
<Mysql必读用SQL实现统计报表中的"小计"与"合计"的方法详解>要点: 本文介绍了Mysql必读用SQL实现统计报表中的"小计&qu ...
- mysql 合计 小计_用SQL实现统计报表中的小计与合计的方法详解
本篇文章是对使用SQL实现统计报表中的"小计"与"合计"的方法进行了详细的分析介绍,需要的朋友参考下 客户提出需求,针对某一列分组加上小计,合计汇总.网上找了一 ...
- .Net中俩种使用不定参数的方法
.Net中俩种使用不定参数的方法 使用Param关键字 比较常用的方法,不过对于调用C++等语言的不定参数函数的时候不能使用. 使用方法: private int Concat(params int[ ...
- 几何画板中几种作函数图像的方法
随着社会的发展,现代教学很多的地方都有了多媒体教学,这就需要一些教学软件的辅助了,几何画板就是其中之一.一些老师在使用几何画板的过程中,常常涉及到函数图象的绘制.因此,很多用户对这方面教程是非常的感兴 ...
- python创建对象_对Python中9种生成新对象的方法总结
先定义一个类: class Point: def __init__(self, x, y): self.x = x self.y = y 下面我们使用9种方法来生成新的对象: point1 = Poi ...
- 电子计算机机房折旧提几年,IDC设备资产运营中四种“折旧率计算”的常见方法...
原标题:IDC设备资产运营中四种"折旧率计算"的常见方法 数据中心基础设施设备管理中设备的折旧是固定资产的折旧.该基础设施设备或者IT设备在长期使用后仍可保持其原始物理形态,但由于 ...
- 水晶报表中对某一栏位值进行处理_终于有人讲清楚了,BI和报表的差异!
IT系统自带报表功能,为什么还要额外采购BI? 报表和BI都能做数据分析,区别在哪里? 加班加点做了那么多表,为什么还不满足老板需求? 报表分析需要IT团队来开发,那BI呢? 这些应该是大家对商业智能 ...
最新文章
- python开发一个彩票系统_[宜配屋]听图阁
- 开心一刻,你和导师之间有什么有趣的事情?
- 艾瑞发布2018视频云行业报告,网易云信领跑第一阵营
- [UOJ299][CTSC2017] 游戏
- (转)The POM for 0.0.1-SNAPSHOT is missing, no dependency informat
- 使用tSQLt进行测试驱动的数据仓库开发(TDWD)
- 熬夜整理了免费的数据源网站大全,再也不愁找不到数据练手
- sklearn.preprocessing之数据预处理
- 解决苹果手机双击页面放大的问题
- 计算图像中任意四个点连成的四边形面积与Ground truth的IOU(Python)
- 【松果圆桌派】全年线下客流量超4000万,COMMUNE的场景体验式玩法是如何打造的?
- PC微信聊天记录备份恢复测试
- Excel 2010光标移动到单元格边框时,不显示小十字(亲自实践)
- FMG首席执行官被控误导股市
- 2022年CVPR挑战赛
- CSAW CTF 2016 PWN quals-warmup
- 成都,今夜请将我遗忘 读后感
- 大型网站架构演进历程
- building workspace js validation
- 桌上有一只盘子,每次只能放入一个水果。请用Wait()、Signal()原语实现爸爸、儿子、女儿三个并发进程的同步。