ЦИКЛ для поиска значения в M запросе

#powerbi #powerquery

#powerbi #powerquery

Вопрос:

У меня есть следующая таблица данных:

введите описание изображения здесь

Мне нужно создать столбец с именем FINAL VALUE с определенными правилами в редакторе power query:

  • ОКОНЧАТЕЛЬНОЕ ЗНАЧЕНИЕ создается на основе СТРАНЫ
  • Если ЗНАЧЕНИЕ больше 100, то будет принято предыдущее значение
  • если все предыдущие значения (без предыдущего значения, такого как 202001) больше 100, то 100

Итак, итоговая таблица должна выглядеть следующим образом:

введите описание изображения здесь

Я сортирую СТРАНУ и ДАТУ, а затем пытаюсь применить цикл в M запросе. Поскольку я не знаком с функцией в M запросе, мне трудно разобраться. Я ценю любую помощь. Спасибо.

Комментарии:

1. Что, если ваша 2-я строка содержит значение 90?

Ответ №1:

Я считаю, что вы лучше разбираетесь в DAX. Вы можете создать новый столбец, как показано ниже:

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

Комментарии:

1. Спасибо за ваш ответ. Я должен сделать это в M запросе.

2. Не могли бы вы сказать мне, почему это нужно делать в m-guery? Я вижу несколько вариантов, но это непросто. Вам нужно будет работать с двумя таблицами, которые вам нужно объединить. В таблице хранятся только записи младше 100. Однако я пока не знаю, как создать столбцы для объединения..