我在 Excel 中有以下表达式,效果很好。
=CUBESET("ThisWorkbookDataModel",
"TopCount(
[ProductBV].[Product Name].Children,10,
sum(
(
[Calendar].[Week Ending].[All].[1/6/2013]:[Calendar].[Week Ending].[All].["&TEXT($E$2,"m/d/yyyy")&"],
[ProductBV].[Moderation Status (ALL)].[All].["&$E$3&"]
),
[Measures].[Product Review Count]
)
)",
"Top 10 to date")
使用以下 DAX 公式衡量产品评论计数。
Product Review Count:=COUNTROWS(ProductBV)
但是,当我将 DAX 度量更改为使用 AVERAGE 函数(产品平均审核)的度量时,CUBESET 函数无法正常工作。它在 CUBESET 中仍然具有正确的项目数量,但是当我使用 CUBERANKEDMEMBER(1-10) 时,它不会向我显示平均评分排名前 10 的产品。
Product Avg Review:=AVERAGE(ProductBV[Rating])
下面的“无法正常工作”表达式:
=CUBESET("ThisWorkbookDataModel",
"TopCount(
[ProductBV].[Product Name].Children,10,
sum(
(
[Calendar].[Week Ending].[All].[1/6/2013]:[Calendar].[Week Ending].[All].["&TEXT($E$2,"m/d/yyyy")&"],
[ProductBV].[Moderation Status (ALL)].[All].["&$E$3&"]
),
[Measures].[Product Avg Review]
)
)",
"Top 10 to date")
总而言之,我的数据非常简单。我有一个数据表连接到一个日历表,其中包含我的产品名称、评级、日期和评论状态。
在我的仪表板中,用户可以通过下拉菜单更改我的日期 ($E$2) 和审核状态 ($E$3)。
+-----------------+-------------------+------------+----------------+
| Submission Date | Moderation Status | Product ID | Overall Rating |
+-----------------+-------------------+------------+----------------+
| 10/23/2016 | APPROVED | Product 1 | 5 |
| 10/23/2016 | APPROVED | Product 2 | 5 |
| 10/23/2016 | APPROVED | Product 3 | 5 |
| 10/23/2016 | REJECTED | Product 3 | 3 |
| 10/23/2016 | REJECTED | Product 4 | 3 |
+-----------------+-------------------+------------+----------------+
谁能告诉我为什么会发生这种情况以及如何解决它?
最佳答案
这会产生一个CUBESET
集合。
集合有计数,因此我可以理解 COUNTROWS
能够正常运行。
如果将一组成员输入 AVERAGE
,它会根据哪个度量进行平均?这似乎是不确定的?
您能否将 ProductBV[Rating]
返回的集合输入到后续的多维数据集函数中,以指定您想要计算其平均值的度量?
关于excel - 使用 AVERAGE() 计算的 DAX 度量的 MDX 语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40294199/