我正在努力计算一个使用礼品卡作为他的第一个订单的客户是否会转变为一个“正常”的客户,这意味着他/她下一次没有礼品卡的订单。
我可以从PaymentMethod中看到客户是如何付款的(PaymentMethod =“礼品卡”)
我已经做了一个专栏,如果订单是用这个购买的,否则它是空白的。
所以基本上我想做一个专栏,上面写着:如果顾客第一次购买礼物卡,然后再下新订单,那不是用礼品卡购买的。例如,1为真,0为FALSE。
我的orders表中有以下列:
我尝试过不同的DAX代码,但问题是-我不知道我怎么写第一个订单必须是礼品卡订单,而下一个客户订单必须是非礼品卡订单,所以我怀疑我尝试过的DAX代码是否相关。
以下是我希望达到的目标:

我希望有人能把我引向正确的方向,提前谢谢你。
发布于 2020-09-23 15:11:34
我建议一些类似的东西:
TransitioningCustomer =
VAR FirstOrderDate =
CALCULATE ( MIN ( Data[BookingDate] ), ALLEXCEPT ( Data, Data[CustomerID] ) )
VAR FirstOrderGiftCard =
"GC"
IN CALCULATE (
VALUES ( Data[PaymentMethod] ),
ALLEXCEPT ( Data, Data[CustomerID] ),
Data[BookingDate] = FirstOrderDate
)
VAR PaymentMethods =
CALCULATE (
DISTINCTCOUNT ( Data[PaymentMethod] ),
ALLEXCEPT ( Data, Data[CustomerID] )
)
RETURN
IF ( FirstOrderGiftCard && PaymentMethods > 1, 1, BLANK () )这将计算第一个订购日期,然后检查该日期是否使用了礼品卡。它还计算了所使用的(不同的)支付方法的总数。
得出的结论是,如果在第一次约会时使用了礼品卡,而且在客户的购买历史上使用了其他类型的支付方法,那么就是一个过渡的客户。
发布于 2020-09-25 11:08:49
在Alexis的帮助下,我最终得到了这样的结果:如果客户第一次订货使用礼品卡,则返回1,第二次订单则返回礼品卡以外的其他东西。
FirstOrderGiftNextOrderNotGift =
VAR FirstOrderID =
CALCULATE (
MIN ( orders[Column1.Order_ID] ),
ALLEXCEPT ( orders, orders[Column1.Customer_ID] )
)
VAR FirstOrderGiftCard =
CALCULATE (
VALUES ( orders[Column1.PaymentMethod] ),
ALLEXCEPT ( orders, orders[Column1.Customer_ID] ),
orders[Column1.Order_ID] = FirstOrderID,
orders[Column1.PaymentMethod] = "Giftcard"
)
VAR PaymentMethods =
CALCULATE (
DISTINCTCOUNT ( orders[Column1.PaymentMethod] ),
ALLEXCEPT ( orders, orders[Column1.Customer_ID] )
)
RETURN
IF (
FirstOrderGiftCard = "Giftcard"
&& orders[ReturningCustomer] = "Yes"
&& PaymentMethods > 1,
1,
0
)在计算了这一列之后,我刚刚创建了一个计算不同客户数量1的度量。
CountOfCustomersWhoTransitioned =
CALCULATE (
DISTINCTCOUNT ( orders[Column1.Customer_ID] ),
orders[FirstOrderGiftNextOrderNotGift] = 1
)https://stackoverflow.com/questions/64027179
复制相似问题