PowerBI DAX получает COUNT DISTINCT с GROUP BY, см. SQL-запрос ниже - PullRequest
0 голосов
/ 18 октября 2018

У меня есть следующий SQL-запрос , который дает мне правильное значение из базы данных.

SELECT
  SUM( DISTINCT_ORDER_NUMBERS )
FROM
(
  SELECT STORE_KEY,
         COUNT( DISTINCT TRANSACTION_NUM ) AS DISTINCT_ORDER_NUMBERS,
         DATE_KEY,
         TRANSACTION_TYPE_KEY
  FROM Pos_Data
  GROUP BY STORE_KEY,
           DATE_KEY,
           TRANSACTION_TYPE_KEY
)
AS A

Однако я сталкиваюсь с трудностями при написании формулы DAX для меры в Power BI. Вот что я пробовал до сих пор, но получаю ошибку.

Общее количествоЗаказы

VAR _TotalOrders =
SUMMARIZE('Pos_Data',
    'Pos_Data'[STORE_KEY],
    'Pos_Data'[DATE_KEY],
    'Pos_Data'[TRANSACTION_TYPE_KEY],
    "DISTINCT_ORDER_NUMBERS",
    DISTINCTCOUNT('Pos_Data'[TRANSACTION_NUM]))

RETURN SUM(_TotalOrders[DISTINCT_ORDER_NUMBERS])

Пожалуйста, помогите

1 Ответ

0 голосов
/ 18 октября 2018

Функция SUM ожидает базовую таблицу, а не вычисляемую таблицу.

Попробуйте вместо этого:

VAR _TotalOrders =
SUMMARIZE('Pos_Data',
    'Pos_Data'[STORE_KEY],
    'Pos_Data'[DATE_KEY],
    'Pos_Data'[TRANSACTION_TYPE_KEY],
    "DISTINCT_ORDER_NUMBERS",
    DISTINCTCOUNT('Pos_Data'[TRANSACTION_NUM]))

RETURN SUMX(_TotalOrders, [DISTINCT_CHECK_SEQ])

Редактировать: Еслиупомянутое вами различие связано с нулями, затем попробуйте this вместо DISTINCTCOUNT.

COUNTAX( DISTINCT( 'Pos_Data'[TRANSACTION_NUM] ), 'Pos_Data'[TRANSACTION_NUM] )

Функция COUNTAX (в отличие от COUNTX) не считает нули.

...