DAX查询,看看表中是否有另外一行具有相同的id和相同的date – 1年

我有一个订单的桌子。 它包含以下相关的列:

  • OrderId(Key)
  • 客户ID
  • date(层级)

我想在同一个表中创build一个新列: OrderedSameMonthLastYear如果一年前同一个客户至less有一个其他订单,那么该值应该为true。

我已经尝试了几个不同的查询,但我不知道足够的DAX来完成这个。

谢谢!

您可以使用EARLIER()函数访问上一个行上下文(本例中是表中的所有行),并在列之间进行比较,然后使用COUNTROWS()计算过滤行的数量。

 OrderedSameMonthLastYear = IF( COUNTROWS( FILTER( Orders, Orders[CustomerId] = EARLIER(Orders[CustomerId]) && Orders[Date].[Year] = EARLIER(Orders[Date].[Year]) - 1 && Orders[Date].[Month] = EARLIER(Orders[Date].[Month]) ) ) > 0, TRUE, FALSE ) 

结果如下: 结果