PowerBI: вернуть расчет, когда выполняется любой VAR - PullRequest
1 голос
/ 18 февраля 2020

У меня есть таблица в PowerBI, подобная этой:

enter image description here

Я бы хотел достичь: в 2018 году подытожим подсчет числа людей старше чем 19; для каждого года после 2018 года подсчитайте общее число для тех, кто точно равен 19.

Мой код ниже возвращает ошибку («Выражение относится к нескольким столбцам. Несколько столбцов не могут быть преобразованы в скалярное значение»):

nineteen_years =
VAR age_test_2018 =
    FILTER ( 'table', 'table'[age] >= 19 && 'table'[year] = 2018 )
VAR age_test_later =
    FILTER ( 'table', 'table'[age] = 19 && 'table'[year] > 2018 )
RETURN
    CALCULATE ( SUM ( 'Union'[head count] ), age_test_2018 || age_test_later )

Кто-нибудь может мне помочь? Ценю вашу помощь!

1 Ответ

0 голосов
/ 18 февраля 2020

Проблема в том, что age_test_2018 и age_test_later являются таблицами. Вы не можете использовать оператор OR (||) с таблицами, он ожидает скалярные значения (отсюда и ошибка).

Чтобы исправить это, вы можете объединить таблицы в одну, например:

nineteen_years =
VAR age_test_2018 =
    FILTER ( 'table', 'table'[age] >= 19 && 'table'[year] = 2018 )
VAR age_test_later =
    FILTER ( 'table', 'table'[age] = 19 && 'table'[year] > 2018 )
VAR all_age_tests =
    UNION ( age_test_2018, age_test_later )
RETURN
    CALCULATE ( SUM ( 'Union'[head count] ), all_age_tests )
...