另一个列值等于 FALSE 的最大日期不是 TRUE

问题描述

I have a table

emp_id    Visit Date     non_billable    
 1         5/2/2021       FALSE
 1         5/5/2021       FALSE
 1         5/6/2021       TRUE

尝试过类似的东西:

Measure =
VAR LatestDate =
    CALculaTE ( MAX ( 'Table1'[visit_date] ),ALL ( 'Table1' ) )
RETURN
    ( ( 'Table1'[non_billable] ) = FALSE )

试图找到visit_date的最大日期,其中non_billable = FALSE 所以对于 emp_id = 1 最大日期将是 5/5/2021 而不是 5/6/2021

解决方法

您可以使用如下窗口函数。

使用 case 表达式检查 non_billable = FALSE

max(case when non_billable = 'FALSE' then visit_date end) over (partition by empid)