每个客户的订单日期和第一笔订单价值之间的天数

Days between orderdates per Customer and first order value

我是 DAX 的新手,有 2 个问题我想为一个项目回答。我正在研究每个客户的第一个价值是多少,以及客户带来的金额是多少。

此外,我想知道客户的订单间隔是多少天、一周或一年后才回来买东西。如果一个顾客来了 5 次,那么每次下单之间的时间间隔是多少。

数据集

enter image description here

现在我尝试了以下方法,但每次都只返回第一个日期,但随后每个客户都会得到第一个存在的订单日期。

First Order = CALCULATE(FIRSTDATE(Text[Datum].[Date]),VALUES(Text[Datum].[Date])) 

如何用 DAX 解决这两个问题

您可以尝试以下方法:

  1. 客户衡量的初始值
Initial value =
-- find customers first appearance date
VAR first_date =
    CALCULATETABLE (
        FIRSTDATE ( 'Table'[Date] ),
        -- remove all filters on 'Table'[Date]
        REMOVEFILTERS ( 'Table'[Date] )
    )
RETURN
    CALCULATE (
        SUM ( 'Table'[Value] ),
        first_date
    )
  1. 一阶日期度量
First Order =
CALCULATE (
    FIRSTDATE ( 'Table'[Date] ),
    REMOVEFILTERS ( 'Table'[Date] )
)
  1. 自上次访问以来过去的天数
Days passed = 
VAR last_visit =
    CALCULATE (
        MAX ( 'Table'[Date] ),
        'Table'[Date]
            -- from example expecting Customer ID & Date form unique combination, 
            -- otherwise use MAX() instead
            < SELECTEDVALUE ( 'Table'[Date] )
    )
RETURN
    DATEDIFF (
        last_visit,
        -- same here as above with SELECTEDVALUE()
        SELECTEDVALUE ( 'Table'[Date] ),
        DAY
    )

结果将如下所示(以 table 视觉表示):