MDX SSAS秩行数函数
我有一个T-SQL查询中的现有SSRS报告,我正在尝试使用SSAS多维数据集上的MDX查询重新创建它。我一直在将Row num和rank逻辑重写到MDX 其内容如下:MDX SSAS秩行数函数,ssas,mdx,rank,partition,Ssas,Mdx,Rank,Partition,我有一个T-SQL查询中的现有SSRS报告,我正在尝试使用SSAS多维数据集上的MDX查询重新创建它。我一直在将Row num和rank逻辑重写到MDX 其内容如下: 选择ceil((按产品订单按年份/月份划分)上方的行号())/12) SQL中的Rank1。有人能告诉我这是否可以用MDX实现吗?在多维数据集中,PRODUCT和YEARMONTH来自不同的维度 谢谢你的帮助 有Rank()函数。例如: with Dynamic Set OrderedSet as Order( NonEm
选择ceil((按产品订单按年份/月份划分)上方的行号())/12)
SQL中的Rank1。有人能告诉我这是否可以用MDX实现吗?在多维数据集中,PRODUCT和YEARMONTH来自不同的维度
谢谢你的帮助 有Rank()函数。例如:
with
Dynamic Set OrderedSet as
Order(
NonEmptyCrossJoin(
[Date].[Year].[Year].Members,
[Product].[Product].[Product].Members,
[Measures].[Invoice Count],
2
),
[Measures].[Invoice Count],
BDESC
)
Member [Measures].[Rank] as
Rank(
([Client].[Client].Currentmember,[Date].[Year].CurrentMember),
OrderedSet
)
select {[Measures].[Invoice Count],[Measures].[Rank]} on 0,
non empty OrderedSet on 1
from [BI Fake]
where ([Date].[Day].&[20160120])
您可以从my.com上阅读有关它的详细信息。您可以使用Generate重复以下列组:
WITH
SET [SalesRank] AS
Generate
(
[Customer].[Customer Geography].[State-Province]
,Order
(
NonEmpty
(
(
[Customer].[Customer Geography].CurrentMember
,[Product].[Product Categories].[Subcategory]
)
,{[Measures].[Internet Sales Amount]}
)
,[Measures].[Internet Sales Amount]
,BDESC
)
)
MEMBER [Measures].[CategoryRank] AS
Rank
(
(
[Customer].[Customer Geography].CurrentMember
,[Product].[Product Categories].CurrentMember
)
,Exists
(
[SalesRank]
,[Product].[Product Categories].CurrentMember
)
)
SELECT
{
[Measures].[Internet Sales Amount]
,[Measures].[CategoryRank]
} ON 0
,[SalesRank] ON 1
FROM [Adventure Works];
其结果是:
谢谢。我能够获得每个记录的排名函数,但我需要在产品的前12个月显示相同的数字。你能告诉我怎么做吗?谢谢。我能够获得每个记录的排名函数,但我需要在产品的前12个月显示相同的数字。你能建议我怎么做吗?你能发布一个想要的输出吗?