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

如何在SSIS中将0:00:00格式时间转换为整数秒?

在SSIS派生列中将"0:00:00"格式时间转为整数秒

推荐方案(最稳妥)

直接把字符串格式的时间转成SSIS的DT_DBTIME类型,再通过日期函数计算总秒数,自动兼容带/不带前导零的小时格式:

DATEPART("Hour", (DT_DBTIME)column) * 3600 + DATEPART("Minute", (DT_DBTIME)column) * 60 + DATEPART("Second", (DT_DBTIME)column)

原表达式的问题

你之前的表达式只算了小时转分钟加分钟,完全漏掉了秒数的计算;而且拆分字符串的方式不如直接转时间类型可靠,容易因格式细节出问题。

备选拆分方案(当无法直接转时间类型时)

如果你的时间字符串有特殊格式导致转DT_DBTIME失败,可以修正拆分逻辑,覆盖小时、分钟、秒三个部分的计算:

(DT_I4)TOKEN(column, ":", 1) * 3600 + (DT_I4)TOKEN(column, ":", 2) * 60 + (DT_I4)TOKEN(column, ":", 3)

只要输入严格是H:MM:SS或HH:MM:SS格式,这个表达式能正确提取各部分并计算总秒数。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.20 23:44:56