紧急求助,关于MS Analysis Service的Cube定制

sogno 2003-07-29 11:24:04
我最近刚开始接触OLAP,目前使用的是微软的Analysis Service,有一个问题请教各位高手,是这样的:

事实表中包含2个维度DimensionA、DimensionB,其中DimensionA是一个父子维度,还有一个度量值Measure1

我想做到这样的效果,就是在Measure1在DimensionA的子成员的级别上按照DimensionB分组求和,然后在DimensionA的父成员的级别上按照DimensionB分组求平均值

举个例子说明:
DimensionA有五个成员,A、B、C,D,E。其中A是B和C的父亲,D是E的父亲,如下表
表1.DimensionA维度表
DimensionID ParentID
A
B A
C A
D
E D

表2.DimensionB维度表
DimensionB有2个成员,甲和乙,如下表

DimensionID



表3.事实表
事实表有6条记录,如下
DimensionA DimensionB Measure1
B 甲 1
C 甲 2
E 甲 3
B 乙 4
C 乙 5
E 乙 6
我希望做到:
按照DimensionB分组,对DimensionA求和,在DimensionA的A、D的层次就是
A D
甲: 3(就是1+2) 3(3)
乙: 9(就是4+5) 6(6)
平均:6 4.5

请问Analysis Service有没有可能做到这样呢?

这个问题很紧急,请各位不吝赐教,谢谢!
...全文
47 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
sogno 2003-08-04
  • 打赏
  • 举报
回复
ok,问题已经解决,多谢liuningxy(想你)了
sogno 2003-08-01
  • 打赏
  • 举报
回复
to liuningxy(想你):

你的意思是说,在自定义计算成员里汇总所需要的数据吗?

能说说你原来具体是怎么做的吗?
liuningxy 2003-08-01
  • 打赏
  • 举报
回复
你在每个层次使用不同的汇总函数不行吗?具体的我也不太知道了,实在不好意思啊,我只是用过一次,是按时间季度来汇总数据,但客户要求季度数据不是简单的三个月数据的和,而是另外计算或是另外的数据,要不就是一个季度最后一个月的数据,我就是通过更改汇总公式实现,我感觉应该能够实现,你在研究研究吧!不过你的这个CUBE的自由度要求的也太高了,不行的话就不能使用数据仓库技术了!
sogno 2003-07-31
  • 打赏
  • 举报
回复
to liuningxy(想你):

我需要的效果是在不同的层次使用不同的聚集函数,这个靠更改汇总公式好像没有办法做到,有没有什么替代的方法呢?
liuningxy 2003-07-30
  • 打赏
  • 举报
回复
你可以在维度B的属性中更改汇总公式,原来的汇总公式是直接求和,你可以使用MDX语句更改成你想要的汇总公式,就可以了!!!
在分析服务器中选中维度后,在下面有一个属性列表,选择高级属性,在中间偏后的地方有个更改汇总公式的地方,好长时间不用叫什么名字想不起来了!
可能会有跗面的影响,你自己反复测试一下

7,394

社区成员

发帖
与我相关
我的任务
社区描述
其他数据库开发 数据仓库
社区管理员
  • 数据仓库
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧