Есть ли способ рассчитать DISTINCTCOUNT как SUMX в DAX? - PullRequest
0 голосов
/ 28 мая 2019

Я хочу рассчитать отдельную сумму для каждой строки в наборе данных.

Я пытался объединить SUMX и DISTINCTCOUNT, без хорошего результата.

При объединении SUMX и DISTINCTCOUNT я получаю неправильные цифры:

SUMX (
    VALUES ( d_CXMeasure[CX Measure Code] );
    CALCULATE (
        DISTINCTCOUNT ( d_Response[ResponseId] );
        FILTER ( f_CX; f_CX[CX Measure Code] = "RCX_TOP_IM" )
    )
)

Если я использую только DISTINCTCOUNT Я получаю правильное значение на итоговых значениях, то же количество ожидается для каждой строки в столбце

CALCULATE (
    DISTINCTCOUNT ( f_CX[ResponseID] );
    FILTER ( f_CX; f_CX[CX Measure Code] = "RCX_TOP_IM" )
)
        Result  Expected Result
        225     999
        118     999
        352     999
        399     999
        230     999
        117     999
        239     999
        162     999
        142     999
        204     999
        399     999
TOTALS  999     999

1 Ответ

1 голос
/ 28 мая 2019

Я не уверен, почему вы делите на d_CXMeasure[CX Measure Code], если хотите, чтобы сумма игнорировала это, но в любом случае вы сможете получить ожидаемый результат, удалив контекст фильтра следующим образом:

SUMX (
    VALUES ( d_CXMeasure[CX Measure Code] );
    CALCULATE (
        DISTINCTCOUNT ( d_Response[ResponseId] );
        FILTER ( f_CX; f_CX[CX Measure Code] = "RCX_TOP_IM" );
        ALL( d_CXMeasure[CX Measure Code] )
    )
)
...