You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Power BI中将整数类型的TRANSTIME列转换为时间类型?

解决Power BI中整数总秒数转时间的问题

问题分析

你的TRANSTIME列整数实际代表总秒数(例如55656秒 = 15小时27分36秒),之前的方法错误地将其当作时分秒拼接的字符串处理,导致转换失败。

正确解决方案

创建计算列,使用DAX公式将总秒数转换为时间:

转换后的时间 = Time.From( [TRANSTIME] / 86400 )
  • 原理:一天共有86400秒(24×3600),将总秒数除以86400得到一天的占比,Time.From()函数可将该比例转换为对应的时间值。
  • 验证:55656 ÷ 86400 = 0.644166...,转换后结果为15:27:36,符合需求;37792秒转换后为10:29:52。

处理超出一天的秒数

如果存在超过86400秒的数值,只需保留时分秒部分,可使用MOD函数取余:

转换后的时间 = Time.From( MOD([TRANSTIME], 86400) / 86400 )

原方法错误原因

  1. 直接对整数使用Text.Length()会触发类型错误,需先将整数转为文本,但即使转换后,Time.FromText("055656")会识别为05:56:56,与你的需求不符;
  2. 核心错误是误解了TRANSTIME的含义——它是总秒数,而非时分秒的拼接字符串。

内容的提问来源于stack exchange,提问作者amal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.03 04:56:03