LOOP查找M查询中的值

问题描述

我有以下数据表:

enter image description here

我需要在超级查询编辑器中使用某些规则创建一个名为FINAL VALUE的列:

  • 最终值是根据COUNTRY创建的
  • 如果VALUE大于100,则将采用先前的值
  • 如果以前的值(没有以前的值,例如202001)都大于100,则为100

所以决赛桌应该像这样:

enter image description here

我对COUNTRY和DATE进行排序,然后尝试在M Query中应用循环。由于我不熟悉M查询中的函数,因此很难弄清楚。感谢您的帮助。谢谢。

解决方法

我相信您在DAX方面会更好。您可以创建一个新的列,如下所示:

Final Value = 
var curCountry = TableCountry[Country]
var curDate = TableCountry[Date]
var prevDate = CALCULATE(MAX(TableCountry[Date]),FILTER(TableCountry,curDate >= TableCountry[Date] && curCountry = TableCountry[Country] && TableCountry[Value] <=100))
return LOOKUPVALUE(TableCountry[Value],TableCountry[Country],curCountry,TableCountry[Date],prevDate,100)

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...