Powerpivot Dax RANKX с использованием двух отдельных таблиц - PullRequest
0 голосов
/ 07 сентября 2018

У меня есть две таблицы, которые я добавляю в powerpivot через ODBC и powerquery, и ранжирую их с помощью приведенного ниже. В случае тай-брейка я использую RAND (), а затем регенерирую.

Проблема, с которой я столкнулся, заключается в том, что у меня теперь есть вторая таблица, которую мне нужно также включить в мой RANK, и я не знаю, как сделать CROSSJOIN или создать меру, которая будет оценивать обе таблицы в моей модели данных. В настоящее время я сделал как рассчитанный столбец.

Может кто-нибудь помочь?

=
RANKX (
    FILTER ( 'Table1', [Reference_ID] = EARLIER ( 'Table1'[Reference_ID] ) ),
    'Table1'[Date], , DESC, DENSE
)

Таблица 1

Partner Reference ID    Date
Bank of America R1290   1/1/2018
Bank of America R1291   1/2/2018
Bank of America R1291   1/3/2018

Таблица 2

Partner Reference ID    Date
Bank of America R1290   1/2/2018
Bank of America R1291   1/5/2018
Bank of America R1291   1/6/2018

1 Ответ

0 голосов
/ 07 сентября 2018

Вы не хотите CROSSJOIN; Вы хотите UNION.

Rank =
VAR TableUnion =
    UNION (
        SELECTCOLUMNS ( Table1, "RefID", Table1[Reference_ID], "Date", Table1[Date] ),
        SELECTCOLUMNS ( Table2, "RefID", Table2[Reference_ID], "Date", Table2[Date] )
    )
RETURN
    RANKX ( FILTER ( TableUnion, [RefID] = [Reference_ID] ), [Date], , DESC, DENSE )
...