Мне нужна быстрая помощь по приведенному ниже запросу MDX
Я хочу фильтровать данные по мере и измерению за раз
case
when [measure].[frequency] >3 and [poa].[segment].&A then 'red'
when [measure].[frequency] <3 and [poa].[segment].&A then 'yellow'
when [measure].[frequency] =3 and [poa].[segment].&A then 'Green'
else 'NA' end
это сценарий, который я написал в рассчитанном члене.. но он не работает успешно. Пожалуйста, помогите нам
1 ответ
Вам нужно поставить сравнение currentMember в случае?
Я думаю, это будет работать хорошо?
case
when [measure].[frequency] >3 then 'red'
when [measure].[frequency] <3 then 'yellow'
when [measure].[frequency] =3 then 'Green'
else 'NA'
end
Хотя вы должны использовать "NA"? Вы не можете использовать null
в этой ситуации?
case
when [measure].[frequency] >3 then 'red'
when [measure].[frequency] <3 then 'yellow'
when [measure].[frequency] =3 then 'Green'
else NULL
end
Другой раздел вашего калька выглядит так, как будто его нужно сравнить [poa].[segment].&A
против чего-то, используя IS
Оператор, как это:
([poa].CURRENTMEMBER IS [poa].[segment].&A)
Так что добавив это в case
заявление:
CASE
WHEN [measure].[frequency] >3
AND ([poa].CURRENTMEMBER IS [poa].[segment].&A) THEN 'red'
WHEN [measure].[frequency] <3
AND ([poa].CURRENTMEMBER IS [poa].[segment].&A) THEN 'yellow'
WHEN [measure].[frequency] =3
AND ([poa].CURRENTMEMBER IS [poa].[segment].&A) THEN 'Green'
ELSE NULL
END