平时经常被问到,如何把数据中最后一次交易记录提取出来?比如每个客户的最后一次下单记录,或者每个产品最后一次卖出记录等。 这个问题实现起来并不难,以这个简易的订单表为例: 如何将上表中每个客户的最后一次购买记录提取出来呢? 下面给出DAX和PowerQuery两种做法。 DAX方法 可以在这个表里新建一列,如果是最后一条记录,返回“是”,计算列写法如下:
这样就在订单表中新增了一列最后记录的标注,直接筛选就可以提取最后一次下单的记录表。 当然还可以用DAX新建表,一次性把最后下单记录提取出来。 逻辑是一样的,只是把计算列的表达式直接写在了计算表中。 PowerQuery方法 上面是用DAX来表达的,如果用PowerQuery应该怎么处理呢? 非常简单,只需要下面几个步骤: 1、日期列按升序排列 2、反转行 3、选中客户列,右键>删除重复项 即可得到每个客户的最后一条记录: 和前面DAX的处理结果一致。 PowerQuery方法要简单的多,只需要点几次鼠标就行了,但是如果客户在最后下单日期有多条记录,并且还都需要保留,那么用上面的PowerQuery方法就失效了,直接用DAX实现即可。 根据不同的业务场景选择用最合适的方法。 并且数据更新后,上面两种方法都可以自动显示更新后数据的最后一条记录。 |
|