MDX订单不';行不通
我正在使用AdventureWorks多维数据集和MS SQL 2017学习MDX。 我想返回根据互联网销售额排名前五的产品子类别:MDX订单不';行不通,mdx,Mdx,我正在使用AdventureWorks多维数据集和MS SQL 2017学习MDX。 我想返回根据互联网销售额排名前五的产品子类别: SELECT Subset (Order ([Product].[Product Categories].[SubCategory].members ,[Measures].[Internet Sales Amount] ,DESC ) ,0 ,5 ) ON 0 FROM [Adventure Wor
SELECT Subset
(Order
([Product].[Product Categories].[SubCategory].members
,[Measures].[Internet Sales Amount]
,DESC
)
,0
,5
)
ON 0
FROM [Adventure Works]
返回的结果没有正确排序。我做错什么了吗
公路自行车山地自行车旅游自行车轮胎和内胎头盔
29358206.96美元26492684.38美元10451490.22美元925.21美元258712.93美元
我还尝试了BDESC,似乎得到了相同的结果。您想要TOPCOUNT MDX函数吗
SELECT
[Measures].[Internet Sales Amount] ON COLUMNS
, TOPCOUNT([Product].[Subcategory].[Subcategory].MEMBERS,5,[Measures].[Internet Sales Amount]) ON ROWS
FROM
[Adventure Works]
您需要TOPCOUNT MDX函数
SELECT
[Measures].[Internet Sales Amount] ON COLUMNS
, TOPCOUNT([Product].[Subcategory].[Subcategory].MEMBERS,5,[Measures].[Internet Sales Amount]) ON ROWS
FROM
[Adventure Works]
这个查询将有助于解释发生了什么。它排序正确,但随后在屏幕上显示默认度量值,因为您没有指定要显示的度量值,只有要排序的度量值:
SELECT {[Measures].[Internet Sales Amount], [Measures].DefaultMember} on 0,
Subset
(Order
([Product].[Product Categories].[SubCategory].members
,[Measures].[Internet Sales Amount]
,DESC
)
,0
,5
)
ON 1
FROM [Adventure Works]
我建议使用该查询,但删除
[Measures].DefaultMember
,您应该会得到预期的结果。此查询将有助于解释发生的情况。它排序正确,但随后在屏幕上显示默认度量值,因为您没有指定要显示的度量值,只有要排序的度量值:
SELECT {[Measures].[Internet Sales Amount], [Measures].DefaultMember} on 0,
Subset
(Order
([Product].[Product Categories].[SubCategory].members
,[Measures].[Internet Sales Amount]
,DESC
)
,0
,5
)
ON 1
FROM [Adventure Works]
我建议使用该查询,但删除
[Measures].DefaultMember
,您应该会得到预期的结果。您好,谢谢!我会在家里测试,然后再给你回复。顺便问一句,订单不起作用有什么原因吗?因为我正在学习MSDN的教程。嗨,谢谢!我会在家里测试,然后再给你回复。顺便问一句,订单不起作用有什么原因吗?因为我正在学习MSDN的教程。嗨,谢谢!我会在家里测试,然后给你回复。嗨,谢谢!我会在家里测试,然后再给你回复。