DAX从切片器值测量或计算列

时间:2019-11-05 19:54:30

标签: powerbi dax powerbi-desktop

我有一个表,其中包含客户的SSN,帐号,购买日期和最大购买日期(所有帐户中SSN的最近购买日期)。客户可以有多个帐户。我知道如何创建一个度量来计算自某个日期(6个月,18个月,24个月)以来未激活的所有帐户的不重复计数。 我想创建一个度量或一个计算列以提供以下信息。 当用户从切片器中选择日期(例如6个月)时,图表将显示6个月内未进行购买的帐户的数量,用户还希望使用下拉式切片器(“是”,“否”)指出SSN是否在其他帐户下有活动。也就是说,如果最大购买日期大于日期分割器中的值。

表结构如下: SSN AccountNumber LastPurchaseDate MaxPurchaseDate 123-45-5678 9876 8/2/2018 9/4/2019 123-45-5678 6398 9/4/2019 9/4/2019 135-65-4321 2233 6/6/2019 6/6/2019

1 个答案:

答案 0 :(得分:0)

最好的方法是在查询设计器中添加具有时差的自定义列:

= [MaxPurchaseDate] - [LastPurchaseDate]

现在您有类似这样的内容:

SSN         AccountNumber  LastPurchaseDate   MaxPurchaseDate   DateDiffDays
123-45-5678 9876          9/2/2018            9/4/2019            2
123-45-5678 6398          9/4/2019            9/4/2019            0
135-65-4321 2233          6/12/2019            6/6/2019           6

您可以添加另一列作为您的6个月,18个月,24个月的过滤器(将DateDiffDays转换为月)。

以下措施对帐户进行计数:

=Distinctcount('YourTable'[AccountNumber])

如果您现在按6个月,18个月,24个月列进行过滤,则在再次计算出每次过滤后该度量将获得,您将得到结果。