在MDX中查找目标销售比率

问题描述

我有一个MDX查询得出该值

+-----------+----------+--------------+--------+----------------+------+
|           |     Sales Cumulative        |      Sales Ratio To Target |
+           +----------+--------------+--------+----------------+-------
|           |  Town A  | Town B  | Town C |  Town A | Town B  | Town C |
+-----------+----------+--------------+--------+----------------+------+
| Quarter 1 |   10     |   20    |   30   |    ?    |    ?    |    ?   |
| Quarter 2 |   30     |   40    |   60   |    ?    |    ?    |    ?   |
+-----------+----------+--------------+--------+----------------+------+

我真的不知道如何在MDX中进行计算以使销售比例达到目标,要计算该比例,只需将销售累计(量度)除以每个城镇目标即可

我的地理尺寸看起来像这样

+----------+----+
| Dim_Geography |
+---------------+
| Province      |  
| District      |
| Town          |
| Target        |
+---------------+

当前,这是我的累计销售mdx脚本。

WITH 
  MEMBER [Measures].[SalesCumulative] AS 
    Sum
    (
      NULL : [Date].[Quarter].CurrentMember,[Measures].[Sales]
    ) 
SELECT 
    {[Measures].[SalesCumulative]}
  * 
    Descendants
    (
      [Geografi].[District].[All],AFTER
    ) ON 0,{Descendants([Date].[Quarter].[All],AFTER)} ON 1
FROM [Cube];

解决方法

如果目标是地理尺寸的属性,则可以将其提取为度量,然后将其划分为两个:

WITH 
  MEMBER [Measures].[SalesCumulative] AS 
    Sum
    (
      NULL : [Date].[Quarter].CurrentMember,[Measures].[Sales]
    ) 
  MEMBER [Measures].[Target] AS 
    [Geografi].[District].[District].CurrentMember.Properties("Target")  
  MEMBER [Measures].[Ratio] AS 
     [Measures].[SalesCumulative] / [Measures].[Target]
SELECT 
    {[Measures].[SalesCumulative],[Measures].[Ratio] }
  * 
    Descendants
    (
      [Geografi].[District].[All],AFTER
    ) ON 0,{Descendants([Date].[Quarter].[All],AFTER)} ON 1
FROM [Cube];

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...