Datetime 在tableau中,如何按日期计算两个日期之间的登录时间?

Datetime 在tableau中,如何按日期计算两个日期之间的登录时间?,datetime,logic,formula,tableau-api,Datetime,Logic,Formula,Tableau Api,例如,我的登录时间是7am到11pm。您希望计算日期方面的18/10/2019 5:30:40和21/10/2019 14:05:15之间的处理时间。在最后的结果中考虑所有的假日和周末。 对于上述示例,我们应该获得的输出: 18/10/2019 16 hrs 19/10/2019 16 hrs 20/10/2019 16 hrs 21/10/2019 7.0875 hrs 从早上7点到晚上11点的登录时间意味着16小时的工作日: IF Datediff('day',[LogInTime],[L

例如,我的登录时间是
7am
11pm
。您希望计算日期方面的
18/10/2019 5:30:40
21/10/2019 14:05:15
之间的处理时间。在最后的结果中考虑所有的假日和周末。

对于上述示例,我们应该获得的输出:

18/10/2019 16 hrs
19/10/2019 16 hrs
20/10/2019 16 hrs
21/10/2019 7.0875 hrs

从早上7点到晚上11点的登录时间意味着16小时的工作日:

IF Datediff('day',[LogInTime],[LogOffTime])=0 Then  
(IF Datepart('hour',[LogOffTime])>23 then 23 else Datepart('hour',[LogOffTime]) end)-  
(IF Datepart('hour',[LogInTime])<7 then 7 else Datepart('hour',[LogInTime]) end)  
Else  
Datediff('day',[LogInTime],[LogOffTime])*16 +  
(IF Datepart('hour',[LogOffTime])>23 then 23 else Datepart('hour',[LogOffTime]) end)-  
(IF Datepart('hour',[LogInTime])<7 then 7 else Datepart('hour',[LogInTime]) end)  
End
如果Datediff('day',[LogInTime],[LogOffTime])=0,则
(如果Datepart('hour',[LogOffTime])>23,则23其他Datepart('hour',[LogOffTime])结束)-
(如果是日期部分('hour',[LogInTime])23,则是其他日期部分('hour',[LogOffTime])结束-
(如果是Datepart('hour',[LogInTime])