mysql 获取最后一条_利用Power BI,轻松获取最后一条记录

本文介绍了如何通过DAX和PowerQuery两种方式,从MySQL数据中提取每个客户的最后一次交易记录。DAX方法涉及创建计算列,而PowerQuery方法则更为直观简便,通过排序和删除重复项即可实现。不同业务场景下,可以选择最适合的方法,且两者都能应对数据更新后的最后一条记录需求。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

平时经常被问到,如何把数据中最后一次交易记录提取出来?比如每个客户的最后一次下单记录,或者每个产品最后一次卖出记录等。

这个问题实现起来并不难,以这个简易的订单表为例:

b6143dc0673a3bd2c5cabc2d433eeb77.png

如何将上表中每个客户的最后一次购买记录提取出来呢?

下面给出DAX和PowerQuery两种做法。

DAX方法

可以在这个表里新建一列,如果是最后一条记录,返回“是”,计算列写法如下:

最后下单记录 =VAR lastdealdate= CALCULATE( MAX('订单表'[日期] ), ALLEXCEPT('订单表','订单表'[客户]) )RETURN IF( [日期]=lastdealdate , "是" )

这个计算列的逻辑是,先找出每个客户的最后一次下单日期,然后判断每一行该客户的订单日期是否等于最后下单日期,如果等于,就返回“是”。

这样就在订单表中新增了一列最后记录的标注,直接筛选就可以提取最后一次下单的记录表。

f0de800c0669a2640257fcd486bdb4f1.png

当然还可以用DAX新建表,一次性把最后下单记录提取出来。

7d63fe1af50889ffa47bbeec5ca9b553.png

逻辑是一样的,只是把计算列的表达式直接写在了计算表中。

PowerQuery方法

上面是用DAX来表达的,如果用PowerQuery应该怎么处理呢?

非常简单,只需要下面几个步骤:

1、日期列按升序排列

1256813634edd074cabb24ae9bafdf62.png

2、反转行

4b64a76cec50bd52cfecba134c771354.png

3、选中客户列,右键>删除重复项

即可得到每个客户的最后一条记录:

e6ec64c873fa825b305184b0f86786a4.png

和前面DAX的处理结果一致。

PowerQuery方法要简单的多,只需要点几次鼠标就行了,但是如果客户在最后下单日期有多条记录,并且还都需要保留,那么用上面的PowerQuery方法就失效了,直接用DAX实现即可。

根据不同的业务场景选择用最合适的方法。

并且数据更新后,上面两种方法都可以自动显示更新后数据的最后一条记录。

更多精彩

分析报告还不会用动态分析?利用Power BI参数轻松实现

PowerBI业务分析技巧:利用DAX细分客户

PowerBI常用的业务分析:按排名分组统计

bc9ccfcfcc5d5002dab0a18574434a74.png

采悟

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值