在不使用mdx查询中的维度的情况下计算度量列的最大值

时间:2017-11-17 08:06:22

标签: ssas mdx

我想在不使用mdx查询中的维度的情况下计算度量列的最大值。我尝试了以下查询来实现此目的。

WITH MEMBER [Measures].[Max key] AS
    Max([Internet Sales Amount].Members,[Internet Sales Amount].currentmember.MEMBER_KEY)
SELECT {[Measures].[Max key]} on COLUMNS
FROM [Adventure Works]

但是我得到了结果中的错误。

有人可以建议我如何使用mdx查询来实现我的要求吗?

1 个答案:

答案 0 :(得分:0)

您已经写过:

WITH 
  MEMBER [Measures].[Max key] AS 
    Max
    (
      [Internet Sales Amount].MEMBERS
     ,[Internet Sales Amount].CurrentMember.Member_Key
    ) 
SELECT 
  {[Measures].[Max key]} ON COLUMNS
FROM [Adventure Works];

[Internet Sales Amount]是衡量标准,因此是数字表达式,因此您无法应用MEMBERSCurrentMember函数。 [Internet Sales Amount]甚至没有钥匙 - 所以你为什么要找一个最大钥匙?

此处定义了

Maxhttps://docs.microsoft.com/en-us/sql/mdx/max-mdx

您别无选择,只能包含一个最大值的集合来处理:

  

Max(Set_Expression [,Numeric_Expression])

这是对max:

的有效使用
WITH 
  MEMBER [Measures].[Max Sales] AS 
    Max
    (
      [Product].[Category].[Category]
     ,[Internet Sales Amount]
    ) 
SELECT 
  [Product].[Category].[Category] ON ROWS
 ,{
    [Internet Sales Amount]
   ,[Measures].[Max Sales]
  } ON COLUMNS
FROM [Adventure Works];

它返回:

enter image description here