DAX 查询以查看 table 中是否有具有相同 ID 和相同日期的另一行 - 1 年

DAX query to see if there's another row in a table with same id and same date - 1 year

我有一份 table 订单。它包含以下相关列:

我想在同一个 table 中创建一个新列:OrderedSameMonthLastYear 如果一年前的同一个月至少有一个来自同一客户的其他订单,则该值应该为真。

我尝试了几个不同的查询,但我对 DAX 的了解还不够多,无法完成此任务。

谢谢!

您可以使用EARLIER()函数访问上一行上下文(在本例中是table中的所有行)并进行列之间的比较,然后使用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
)

结果如下: