PowerBI联接表和计算

问题描述

我有两个表: 表1

nil

表2

Year Name Score
2010 A    1000
2011 A    1200
2012 A    1200
2013 A    1300
2010 B    1100
2011 B    1500
2012 B    1300
2013 B    1600

我想这样做:匹配两个表,只要表1中的Year匹配表2中的Year,就将得分除以因子,例如用于Year Factor 2010 3.57 2011 4.21 2012 6.11 2013 2.15 中的A2010,1000/3.57中的B

如何修改以下代码?

2010,1100/3.57

非常感谢您!

解决方法

如果您正在寻找措施,则可以在下面的代码中尝试此操作-

adjusted score = 

VAR current_row_year = MIN('Table 1'[Year])
VAR current_row_Score = MIN('Table 1'[Score])

VAR factor =
CALCULATE(
    MAX('Table 2'[Factor'),filter (
        all('Table 2'),'Table 2'[Year]= current_row_year
    )
) 

RETURN DIVIDE (current_row_Score,factor)

自定义列的代码如下-

adjusted score = 

VAR current_row_year = 'Table 1'[Year]
VAR current_row_Score = 'Table 1'[Score]

VAR factor =
CALCULATE(
    MAX('Table 2'[Factor'),factor)

您还可以使用“使用Power进行转化”查询执行相同的操作。在这种情况下,您只需要使用Year合并表1和2,然后在扩展表之后,Year的每一行中都会有Factor。然后,您可以使用-得分/因子

添加一个新的自定义列

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...