Looker Studio跨天工作时长计算异常问题及公式优化求助
Looker Studio跨天工作时长计算异常问题及公式优化求助
嗨,我在Looker Studio里计算工作时长时碰到了个闹心的问题,想请大家帮忙优化下公式!
具体情况是这样的:当工作时段跨天的时候,比如结束时间是第二天的01:09,开始时间是前一天的23:59,用我现在的公式算出来结果是-22h40m,但实际应该是01h20m的有效工作时长,负数结果完全不符合实际需求。
我目前在用的计算公式是这样的:
(SUM(( CAST(REGEXP_EXTRACT(HORA REAL DO FIM DE EXECUÇÃO - FORMATADA, "(.):.:.") AS number ) * 3600 ) + ( CAST(REGEXP_EXTRACT(HORA REAL DO FIM DE EXECUÇÃO - FORMATADA, ".:(.):.") AS number ) * 60 ) + ( CAST(REGEXP_EXTRACT(HORA REAL DO FIM DE EXECUÇÃO - FORMATADA, ".:.:(.)") AS number ) ) )) - (SUM(( CAST(REGEXP_EXTRACT(HORA DE INÍCIO DE EXECUÇÃO REAL - FORMATADA, "(.):.:.") AS number ) * 3600 ) + ( CAST(REGEXP_EXTRACT(HORA DE INÍCIO DE EXECUÇÃO REAL - FORMATADA, ".:(.):.") AS number ) * 60 ) + ( CAST(REGEXP_EXTRACT(HORA DE INÍCIO DE EXECUÇÃO REAL - FORMATADA, ".:.:(.)") AS number ) ) ))
这个公式的逻辑就是把开始和结束时间拆成时、分、秒,转成总秒数后直接相减,但完全没考虑跨天的情况——只要结束时间的时分秒数值比开始时间小,就会算出负数。
有没有大佬能帮忙优化下这个公式,让它能正确处理跨天的时长计算?比如当结束时间总秒数小于开始时间时,自动加上一天的总秒数(86400秒),这样就能得到正确的正数时长了!
备注:内容来源于stack exchange,提问作者Jose Augusto Silva Nascimento
相关产品推荐
相关产品推荐

