Как рассчитать средние значения для группы с фильтром в DAX? - PullRequest
0 голосов
/ 05 декабря 2018

У меня есть данные по 2 таблицам, которые выглядят примерно так:

Table 1
Mean | Activity   | name_id
---------------------------
1    | Swimming   | 1
3    | Basketball | 2
3    | Swimming   | 3
9    | Running    | 1
5    | Basketball | 3

TypeName | Name_id
------------------
ABC      | 1
DEF      | 2
GHI      | 3

Предполагая, что объединения выполнены, я хочу запустить эквивалент этого SQL:

select activity, avg(mean)
from table1 a
inner join table2 
 on table1.name_id = table2.name_id
where table2.name_id = 'DEF'

Я получил простую быструю меру, которая делает все, кроме фильтра для 'DEF' name_ids:

Average = 
AVERAGEX(
    KEEPFILTERS(VALUES('Table1'[Activity])),
    CALCULATE(SUM('Table1'[Mean]))
)

Я в тупике относительно того, куда именно я должен поместить фильтр.Я также пытался использовать CALCULATE в качестве базовой функции, но был озадачен тем, как правильно его запустить.

...