我有一个名为Staff_Starters(https://www.dropbox.com/s/khowqfgytc6fvq8/data.csv?dl=0)的表格,它连接到日期维度。
是否有可能在Staff_Starters中创建一个计算列或度量,它计算每个拥有DateEmployed&当它有Termination_Date时停止计数。
公式将计算个别多次,直到结束日期不等于当前日期。
我目前有一个名为Staff_Starterts的表,其主列为:
[Starters,Leavers&实价] [1]
使用的公式:人数变动=计算( COUNTROWS(职员) FILTER(员工, AND(员工[约会日期]< = MIN(Date_Dim [Calendar_Date]), 人员[Termination_Date] GT; = MAX(DATE_DIM [CALENDAR_DATE]))))
答案 0 :(得分:2)
Count = CALCULATE(
COUNTROWS(data),
FILTER(data,
AND(data[Date Employed]<MIN('Calendar'[Date]),
data[TerminationDate]>MAX('Calendar'[Date])
)
)
)
结果
Date Count
2017-01-01 85
2017-02-01 74
2017-03-01 58
2017-04-01 37
修改:在回复评论时,说明如下。 (引自msdn)
CALCULATE
:
在由指定过滤器
修改的上下文中计算表达式
COUNTROWS
:(显而易见,但要保持完整性)
计算指定表中或表达式
定义的表中的行数
FILTER
:
返回表示另一个表或表达式的子集的表。
AND
:
检查两个参数是否都为TRUE。
AND(data[Date Employed]<MIN('Calendar'[Date]),
在当前所选时段开始之前仅包含Date Employed
的条目。
data[TerminationDate]>MAX('Calendar'[Date])
在当前所选时段结束后仅包含TerminationDate
的条目。
这应该足以使这项措施适应数量&#34;离职者&#34;,&#34;初学者&#34;等等,只要您可以根据比较开始,终止和选定的期间日期来定义它。