PowerBI之DAX神功番外篇50 指定日期的顾客在日后的复购情况
网友提问:



回答网友问题:
为什么我让大家发效果图或是一步一步让你们把话说清楚,因为我不懂你的业务
我只能按你的要求做一个显示效果一样的东西
比如你心中有一位女神,他在你心中有多好,我看不到,只有你自己懂
你找我画她的画像,我只是负责把她画出来,至于她是什么样的人,我不清楚
业务也是一样,可能你要的不是这个,但是你表达不出来,别人就帮不了你
我们先准备一张表

有些学习的人特有意思,他们说,2021年1月1日张三买了两次怎么办?这是业务,你让我怎么回答?如果合计算两次你就合并成一条记录例如在DAX中用SUMMARIZE就可以。如果2次就算两次就别管它,将来需要唯一值再去重。
最后要的结果是这样的,我在切片器上筛选2021/1/1(这一天有张三、李四、王五三个人购买),我们看2021/1/1之后的时间时,这三个人复购次数和复购金额

(1)我们可以准备一个日期表或者用SUMMARIZE对Sheet1日期列去重得到一张表都可以,按需去做就好,但是二者不能建议关系。
因为我在切片器上得到的是一个值,我是用这个值去筛选Sheet1

(2)做下面两个度量值
Selectdvalue(日期表[Date]) 代表切片器上你单选的那个日期值
筛选Sheet1中大于这个日期的记录
用CountX计算或SumX求和
但是现在孙兴华也在里面呢,因为2021/1/1没有孙兴华,但是后面的日期中有孙兴华

我们可以用Calculate多条件筛选

需要一个{"张三","李四","王五"},我们筛选Sheet1中的日期等于切片器上单选的那个日期
使用selectcolumns选择我们需要的姓名列(就是 {"张三","李四","王五"})。最后让 Sheet1的客户列 in {"张三","李四","王五"} 但是,《DAX神功》中讲了 【列】=(任意比较运算)值,会删除这列的筛选,所以我们用keepfilters恢复筛选。

度量值如下:
做好的PowerBI文件发到评论区可下载研究

PowerBI学习顺序:
【1】Access基础篇,学习s01开头的集数,理解表格数据规范和表关系
https://www.bilibili.com/video/BV1tf4y117Sh
【2】PowerBI火力全开,学习函数语法,与应用场景
https://www.bilibili.com/video/BV1qa4y1H7wp
【3】DAX神功,学习DAX函数原理
https://www.bilibili.com/read/readlist/rl442274
【4】PowerBI可视化图表
https://www.bilibili.com/video/BV1W54y1i7dE
https://www.bilibili.com/video/BV1r54y1i75n