行筛选后的新客户

时间:2017-09-15 22:47:07

标签: powerbi dax

我在Power BI(DAX模式2015)中使用了以下DAX代码,这可以很好地获得新客户。

如果客户使用Product_1或Product_2,则客户将被视为新的。 现在我想创建相同的,但这次分别与每个产品相关。因此,如果客户首次开始使用Product_1(不考虑Product_2),那么新客户PRODUCT_1将进行测量。

在数据模型FACT表中,我有产品1和2的列,如果在一个月内仅使用产品2,然后产品1在同一行中是空白的,反之亦然。 我试着补充一下     过滤器(MAIN; MAIN([Product_1] 0)) 但它给了我奇怪的结果。新客户全年重复,而不是只计算一次。

Absolute_NEW_Customers(PRODUCT_1) = 
COUNTROWS ( 
         FILTER(
                ADDCOLUMNS(VALUES(MAIN[Customer No]);"PreviousSales";
                        CALCULATE(COUNTROWS(MAIN);FILTER(ALL('DateKey');DateKey[Date]<MIN('DateKey'[Date]))));
       [PreviousSales]=0))

1 个答案:

答案 0 :(得分:1)

我终于找到了帮助的功能。有必要使用&#34; CALCULATETABLE&#34; 函数来过滤整个表格。以下是最终代码:

Absolute_NEW_Customers(Product_1) = 
COUNTROWS ( 
FILTER(
       ADDCOLUMNS(
                 CALCULATETABLE(VALUES(MAIN[Customer No]);FILTER(MAIN;NOT ISBLANK(MAIN[Product_1])));"PreviousSales";
                        CALCULATE(COUNTROWS(CALCULATETABLE(MAIN;FILTER(MAIN;NOT ISBLANK(MAIN[Product_1]))));FILTER(ALL('DateKey');DateKey[Date]<MIN('DateKey'[Date]))));
       [PreviousSales]=0))