Power BI查询编辑器中ss.xxx秒数转mm:ss.xxx格式的实现方法
Power BI查询编辑器秒值转mm:ss.xxx格式实现方法
方案1:最简实现(基于Duration格式转换)
直接在自定义列中使用以下代码即可:
Duration.ToText(#duration(0,0,0,Number.Round([Cumulative_Time],3)), "mm\:ss\.fff")
逻辑说明
- 先通过
Number.Round([Cumulative_Time],3)对原始秒值四舍五入保留3位小数,保证毫秒精度符合要求 - 用
Duration.ToText的自定义格式参数直接指定输出规则:mm:输出两位补零的分钟数ss:输出两位补零的秒数fff:输出三位补零的毫秒数- 格式字符串中的
\是转义符,避免冒号、点被识别为内置格式占位符
方案2:自定义计算实现(适用超60分钟需显示总分钟数场景)
如果你的秒值累计超过60分钟时需要直接显示总分钟数(比如70分钟不要转成1小时10分,直接显示70:xx.xxx),可以用以下自定义列代码:
let 校准秒数 = Number.Round([Cumulative_Time], 3), 总分钟 = Number.IntegerDivide(校准秒数, 60), 剩余秒 = Number.Mod(校准秒数, 60), 秒整数 = Number.IntegerDivide(剩余秒, 1), 毫秒 = Number.Round((剩余秒 - 秒整数)*1000, 0) in Text.PadStart(Text.From(总分钟), 2, "0") & ":" & Text.PadStart(Text.From(秒整数), 2, "0") & "." & Text.PadStart(Text.From(毫秒), 3, "0")
内容的提问来源于stack exchange,提问作者Vine
相关产品推荐
相关产品推荐

