Sql server 2008 MSSQL Server 2008 BDS多维数据集中的计算度量
我想定义3个计算成员。我有一个基于两个表的立方体,轨迹信息和图表位置。图表位置表由36周列组成,其中包含给定曲目在给定周前100名列表中的位置(如果歌曲未进入列表,则为0): 以此类推,直到第36周 我想计算以下指标: 1) 这首歌在前十名中的周数 2) 这首歌进入前20名的周数 3) “人气表”,可通过以下公式计算: 1/((所有非零头寸的平均值)*(37-(列入名单的周数)))Sql server 2008 MSSQL Server 2008 BDS多维数据集中的计算度量,sql-server-2008,mdx,data-warehouse,olap,cube,Sql Server 2008,Mdx,Data Warehouse,Olap,Cube,我想定义3个计算成员。我有一个基于两个表的立方体,轨迹信息和图表位置。图表位置表由36周列组成,其中包含给定曲目在给定周前100名列表中的位置(如果歌曲未进入列表,则为0): 以此类推,直到第36周 我想计算以下指标: 1) 这首歌在前十名中的周数 2) 这首歌进入前20名的周数 3) “人气表”,可通过以下公式计算: 1/((所有非零头寸的平均值)*(37-(列入名单的周数))) 有人能帮我解决这些问题吗?没有多维数据集定义,写一些MDX有点困难,但对于1)我将举一个类似的问题作为例子-年数[
有人能帮我解决这些问题吗?没有多维数据集定义,写一些MDX有点困难,但对于1)我将举一个类似的问题作为例子-年数[东京]一直在前三大销售城市中:
select
[Measures].[Sales] on 0,
Filter(
Generate( [Time].[Year].[Year].members as s1,
TopCount( s1.currentMember * [Customers].[City].members, 3, [Measures].[Sales] )
) as s2,
IIF( s2.current(1) IS [Customers].[Geography].[City].[Tokyo] , true, false )
)
on 1
from [Sales]
这适用于中提供的演示多维数据集;应该与相同,因为这是相当标准的MDX。我想你会对这个函数有想法的。然后,您可以创建一个计算出的度量值,该度量值将对过滤集进行计数(),而不是将该集放在轴上(用于演示目的)。Business Development Studio 2008制作的多维数据集,很抱歉造成歧义。我明白了。当你说你有一个基于2个表的多维数据集时,你是说2个维度的表吗?你们也有事实表吗?我有3个维度:图表位置、艺术家数据和杂项数据。我有一个测量值,它是总轨迹数。“图表位置”维度包含所有36周列。
select
[Measures].[Sales] on 0,
Filter(
Generate( [Time].[Year].[Year].members as s1,
TopCount( s1.currentMember * [Customers].[City].members, 3, [Measures].[Sales] )
) as s2,
IIF( s2.current(1) IS [Customers].[Geography].[City].[Tokyo] , true, false )
)
on 1
from [Sales]