【问题标题】:How do I divide using DAX in Power BI?如何在 Power BI 中使用 DAX 进行划分?
【发布时间】:2020-10-14 12:02:08
【问题描述】:

我有以下列

Code | Amount
TY123 | 30
TY456 |60
TY789 |80

等等

我想找到一个百分比 对于每个 country(来自不同的表)* 100,我必须将列 Code 的不同计数除以 Total Spends(来自不同的表)(来自不同的表) p>

生成的表格应该是这样的

Country | Code %
A |43%
B | 56%

等等

我该怎么做?我很困惑。 我尝试了以下措施,但它给了我错误的结果[错误:函数 SUM 不能与 TYPE 字符串一起使用]

#measure = DIVIDE(SUM('Table'[Code]),SUM('Table2'[Total Spends]))*100

非常感谢任何帮助。

【问题讨论】:

  • 公式本身对我来说看起来不错,错误“函数 SUM 无法使用 TYPE 字符串”是不言自明的,您使用的列之一是字符串而不是数字。打开 Power Query 并在导入时更改其数据类型
  • 嗨,这样做时它会被 ERROR 取代并说不能更改。
  • (code) 列是数据类型字符串,显然无法更改....试试这个计算(distinctcount(code)/sum(total花费))*100)

标签: powerbi dax


【解决方案1】:

由于代码列看起来像TY123,这显然是一个字符串数据类型列,尝试求和或除法没有任何意义。

由于您指定要将Code不同计数除以Total Spends,因此请使用 DISTINCTCOUNT 而不是 SUM。

measure =
DIVIDE ( DISTINCTCOUNT ( 'Table'[Code] ), SUM ( 'Table2'[Total Spends] ) ) * 100

DISTINCTCOUNT 适用于任何列数据类型,是您真正感兴趣的聚合器。

【讨论】:

  • 非常感谢,这很有效,我已经投票并勾选了你的答案:)
猜你喜欢
  • 2022-09-27
  • 2022-12-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多