Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
MDX中的订单和限制结果_Mdx_Mondrian - Fatal编程技术网

MDX中的订单和限制结果

MDX中的订单和限制结果,mdx,mondrian,Mdx,Mondrian,我正试图获得前5名产品的销售额为每个“城市”,按“销售”下降,但我的代码不能正常工作。 查询查找前5名产品,但不是每个产品的前5名,订单描述也不起作用。我用蒙德里安。有什么想法吗 具有 将[产品]设置为 头( 订单(筛选器([Product].[Product]。成员,非空([Measures].[Sales]),[Measures].[Sales],DESC) 5. ) 挑选 列上的非空{[Measures].[Sales]}, 行中的非空交叉连接([Markets].[City].成员,[

我正试图获得前5名产品的销售额为每个“城市”,按“销售”下降,但我的代码不能正常工作。 查询查找前5名产品,但不是每个产品的前5名,订单描述也不起作用。我用蒙德里安。有什么想法吗

具有 将[产品]设置为 头( 订单(筛选器([Product].[Product]。成员,非空([Measures].[Sales]),[Measures].[Sales],DESC) 5. ) 挑选 列上的非空{[Measures].[Sales]}, 行中的非空交叉连接([Markets].[City].成员,[PRODUCTS]) 从…起 [钢轮车轮]
下面是一个与您针对
AdvWrks
的情况类似的示例:

WITH 
  SET [AllCountries] AS [Country].[Country].MEMBERS 
  SET [AllStates]    AS [State-Province].[State-Province].MEMBERS 
  SET [Top2States] AS 
    Generate
    (
      [AllCountries]
     ,TopCount
      (
        (EXISTING 
          [AllStates])
       ,3
       ,[Measures].[Internet Order Count]
      )
    ) 
  MEMBER [State-Province].[All].[RestOfCountry] AS 
    Aggregate({(EXISTING {[AllStates]} - [Top2States])}) 
SELECT 
  {[Measures].[Internet Order Count]} ON COLUMNS
 ,{
      [AllCountries]
    * 
      {
        [Top2States]
       ,[State-Province].[All].[RestOfCountry]
       ,[State-Province].[All]
      }
  } ON ROWS
FROM [Adventure Works];
它给出了以下结果:

因此,如果我尝试调整并简化上述内容,因为您不需要
RestOf..
类别,我会得到如下结果:

WITH 
  SET [AllCities]    AS [Markets].[City].MEMBERS
  //SET [AllPRODUCTS]  AS NONEMPTY([Product].[Product].MEMBERS, [Measures].[Sales])
  //alternative if NonEmpty not implemented in Mondrian..
  SET [AllPRODUCTS]  AS 
     FILTER(
         [Product].[Product].MEMBERS
        ,not isEmpty([Measures].[Sales])
     )
  SET [Top5PRODUCTS] AS 
    Generate
    (
      [AllCities]
     ,TopCount
      (
        (EXISTING 
          [AllPRODUCTS])
       ,5
       ,[Measures].[Sales]
      )
    ) 
SELECT 
  NON EMPTY 
    {[Measures].[Sales]} ON COLUMNS
 ,

    [AllCities] 
   *[Top5PRODUCTS]
   ON ROWS
FROM [SteelWheelsSales];

下面是一个与您针对
AdvWrks
的情况类似的示例:

WITH 
  SET [AllCountries] AS [Country].[Country].MEMBERS 
  SET [AllStates]    AS [State-Province].[State-Province].MEMBERS 
  SET [Top2States] AS 
    Generate
    (
      [AllCountries]
     ,TopCount
      (
        (EXISTING 
          [AllStates])
       ,3
       ,[Measures].[Internet Order Count]
      )
    ) 
  MEMBER [State-Province].[All].[RestOfCountry] AS 
    Aggregate({(EXISTING {[AllStates]} - [Top2States])}) 
SELECT 
  {[Measures].[Internet Order Count]} ON COLUMNS
 ,{
      [AllCountries]
    * 
      {
        [Top2States]
       ,[State-Province].[All].[RestOfCountry]
       ,[State-Province].[All]
      }
  } ON ROWS
FROM [Adventure Works];
它给出了以下结果:

因此,如果我尝试调整并简化上述内容,因为您不需要
RestOf..
类别,我会得到如下结果:

WITH 
  SET [AllCities]    AS [Markets].[City].MEMBERS
  //SET [AllPRODUCTS]  AS NONEMPTY([Product].[Product].MEMBERS, [Measures].[Sales])
  //alternative if NonEmpty not implemented in Mondrian..
  SET [AllPRODUCTS]  AS 
     FILTER(
         [Product].[Product].MEMBERS
        ,not isEmpty([Measures].[Sales])
     )
  SET [Top5PRODUCTS] AS 
    Generate
    (
      [AllCities]
     ,TopCount
      (
        (EXISTING 
          [AllPRODUCTS])
       ,5
       ,[Measures].[Sales]
      )
    ) 
SELECT 
  NON EMPTY 
    {[Measures].[Sales]} ON COLUMNS
 ,

    [AllCities] 
   *[Top5PRODUCTS]
   ON ROWS
FROM [SteelWheelsSales];

非常感谢。不幸的是,这个脚本不适用于我的Pentaho-Saiku分析界面(使用mondrian 3模式)。错误为:MondrianException:Mondrian错误:第11行第11列标记“[AllPRODUCTS]”的语法错误似乎集合中不接受NONEMPTY()和EXISTING。我将其替换为FILTER()函数,然后[Top5PRODUCTS]集返回0行。@ElizaM是否在Mondrian中实现?此配方取决于其功能。现有配方未在mondrian for SETs中实现。“MondrianException:Mondrian错误:标记“[AllPRODUCTS]”第11列第17行的语法错误。”谢谢。不幸的是,这个脚本不适用于我的Pentaho-Saiku分析界面(使用mondrian 3模式)。错误为:MondrianException:Mondrian错误:第11行第11列标记“[AllPRODUCTS]”的语法错误似乎集合中不接受NONEMPTY()和EXISTING。我将其替换为FILTER()函数,然后[Top5PRODUCTS]集返回0行。@ElizaM是否在Mondrian中实现?此配方取决于其功能。现有配方未在mondrian for SETs中实现。“Mondrian例外:Mondrian错误:标记“[AllPRODUCTS]”第11列第17行的语法错误。“您在Mondrian中进行了工作
ORDER
吗?您在Mondrian中进行了工作
ORDER