问题描述
我有两个表: 表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
中的A
; 2010,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。然后,您可以使用-得分/因子
添加一个新的自定义列