在 PowerBI DAX 中使用 RANKX
Using RANKX in PowerBI DAX
我是 PowerBI 新手,一直在玩 DAX 函数,更具体地说,是 RANKX 函数。这是我的数据集:
+----------+-------------------------------------+-----------------+----------+
| Category | Sub Category | Date | My Value |
+----------+-------------------------------------+-----------------+----------+
| A | A1 | 2018-01-01 | 2 |
| A | A2 | 2018-01-02 | 4 |
| A | A3 | 2018-01-03 | 6 |
| A | A4 | 2018-01-04 | 6 |
| B | B1 | 2018-01-05 | 21 |
| B | B2 | 2018-01-06 | 22 |
| B | B2 | 2018-01-07 | 23 |
| C | C1 | 2018-01-08 | 35 |
| C | C2 | 2018-01-09 | 35 |
| C | C3 | 2018-01-10 | 35 |
+----------+-------------------------------------+-----------------+----------+
下面是我的代码:
Rank all rows as Column =
RANKX(
'Table',
'Table'[My Value]
)
不幸的是,我收到以下错误:
A single value for column 'My Value' in table 'Table' cannot be
determined. This can happen when a measure formula refers to a column
that contains many values without specifying an aggregation such as
min, max, count, or sum to get a single result.
如有任何帮助,我们将不胜感激。
谢谢
创建一个小节以对 "My value" 列求和:
Sum value = SUM(Table[My value])
然后使用此衡量标准来获得您的排名:
Rank all rows as Column =
RANKX(ALL(Table);[Sum value])
这将为您提供每个子类别的排名。
你的公式没有问题,你只是放错了地方。
您可以通过两种方式在 PowerBI 中编写 DAX 公式:
- 作为计算列
- 作为衡量标准
区别很关键,如果你想使用PowerBI,你需要学习它。
您编写的公式适用于计算列。如果将其创建为度量,则会出现错误。要解决此问题,请转到选项卡 "Model",单击 "New Column",粘贴您的代码,它应该可以工作。
如果你需要RANKX作为衡量标准,Chrisoffer已经给了你很好的答案。
我是 PowerBI 新手,一直在玩 DAX 函数,更具体地说,是 RANKX 函数。这是我的数据集:
+----------+-------------------------------------+-----------------+----------+
| Category | Sub Category | Date | My Value |
+----------+-------------------------------------+-----------------+----------+
| A | A1 | 2018-01-01 | 2 |
| A | A2 | 2018-01-02 | 4 |
| A | A3 | 2018-01-03 | 6 |
| A | A4 | 2018-01-04 | 6 |
| B | B1 | 2018-01-05 | 21 |
| B | B2 | 2018-01-06 | 22 |
| B | B2 | 2018-01-07 | 23 |
| C | C1 | 2018-01-08 | 35 |
| C | C2 | 2018-01-09 | 35 |
| C | C3 | 2018-01-10 | 35 |
+----------+-------------------------------------+-----------------+----------+
下面是我的代码:
Rank all rows as Column =
RANKX(
'Table',
'Table'[My Value]
)
不幸的是,我收到以下错误:
A single value for column 'My Value' in table 'Table' cannot be determined. This can happen when a measure formula refers to a column that contains many values without specifying an aggregation such as min, max, count, or sum to get a single result.
如有任何帮助,我们将不胜感激。
谢谢
创建一个小节以对 "My value" 列求和:
Sum value = SUM(Table[My value])
然后使用此衡量标准来获得您的排名:
Rank all rows as Column =
RANKX(ALL(Table);[Sum value])
这将为您提供每个子类别的排名。
你的公式没有问题,你只是放错了地方。
您可以通过两种方式在 PowerBI 中编写 DAX 公式:
- 作为计算列
- 作为衡量标准
区别很关键,如果你想使用PowerBI,你需要学习它。
您编写的公式适用于计算列。如果将其创建为度量,则会出现错误。要解决此问题,请转到选项卡 "Model",单击 "New Column",粘贴您的代码,它应该可以工作。
如果你需要RANKX作为衡量标准,Chrisoffer已经给了你很好的答案。