首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

自动展示最近N天,其实利用 Power Query 更简单

最近发生的业务往往需要更及时的关注,所以报告中经常有展示最近N天数据的需求,之前曾介绍过利用DAX动态的显示最近N天:

如果在报告中只需要分析最近N天的数据,其实也可以不用这么麻烦,还可以利用PowerQuery的日期筛选器,更方便的实现。

数据导入到PowerQuery后,按数据中的日期字段来筛选数据。比如这个订单表,只需要点击订单日期列右侧的下拉箭头,即可找到日期筛选器:

在日期筛选器中内置有各种粒度的筛选,比如昨天、今天、本周、上周、本月、本年等等,甚至也可以细化到按小时、分钟、秒来筛选行,还可以自定义筛选。

如果仅需要最近5天的订单数据,只需要选择“在之前的”,然后在弹出的窗口中输入5天就可以了:

然后上载,模型中就是最近5天的数据,直接做可视化展示即可。

上面用的之前5天不包括今天,如果想要包含今天的最近5天数据,可以这样设置:之前的4天以及今天。

如果打算修改为最近15天的数据,点击“转换数据”进入PowerQuery编辑器,点击筛选行这个步骤旁边的小齿轮,可以再次进入筛选行的按钮,将5修改为15就可以了。

也可以直接修改这个步骤的M代码,将其中的5改为15:

还可以利用PowerQuery的参数,将这个最近N天动态化,先在PowerQuery里建个参数:

然后修改M代码为:

就可以根据参数的值来动态的筛选最近N天了。

这种做法加载到模型中的数据永远就是最近N天的,会随着日期的变化而动态变化,更加简单轻巧,但简单也伴随着单调,它无法灵活的根据用户交互来展示某个日期之前的最近N天,也无法仅利用这张表做其他的分析,比如同期对比分析等。

具体用哪种方式,如何建立模型,依然是根据实际业务的需要来衡量。

当然如果你的历史数据非常多,而你只需要分析最近3年的,同样可以利用日期筛选器来动态的提取最近3年的数据,而无需将全部历史数据都加载到数据模型中,这样可以显著的提升模型性能。

关于PowerQuery日期筛选器,其他的粒度和筛选方式可以自己尝试一下。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20210304A04R4R00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券