一个Oracle报表问题
在工作中与到一个报表业务需求,想了半天搞不定,特来请教大神!
情况是这样的,
有一个消费类型字典表A
id 主键
name 类型名称
还有一个消费记录表B
id 主键
year 年份(如:2012,2013)
tid 消费类型ID
money 消费金额
想要得到如下报表
年份\消费类型
类型1 类型2 类型3 ... 小计
2012
2013
...
小计
按消费类型和年份统计消费金额的报表。
分析了一下似乎可以用sql把它搞出来,但自己弄了半天没什么没什么头绪, 请大神指点!
如果用sql不行,只能下后台用java悲催的拼出来了
------解决方案--------------------这几个你选一个应该可以搞定,不过我不熟悉
GROUP BY 与ROLLUP、CUBE 和GROUPING SETS
------解决方案--------------------
如果你的类型数量不定,暂时还没人能用一个SQL解决。因为论坛里很多人都提过这个问题了,如果你的类型数量固定可以用CASE WHEN 或者DECODE 来固定列名完成统计。
------解决方案--------------------
http://bbs.csdn.net/topics/390652739
------解决方案--------------------动态行转列 老问题了 几十个类型 核心就一个 查询所有不同类型拼接起来
建议还是用存储过程做吧 如果服务器无鸭梨 也可以在程序里面拼接