SSIS将分钟转换为带有派生列的HH:MM

时间:2015-04-16 10:30:28

标签: ssis

我正在尝试获取一个派生列,将分钟总和转换为HH:MM。使用以下表达式,当分钟总和小于24小时时,我得到正确的结果:

SUBSTRING((DT_WSTR,20)
  DATEADD(
    "minute",
    FIELDNAME,
    (DT_DBTIMESTAMP)"01/01/2013 00:00:00"
  )
,12,5)

当分钟总和超过24小时(1500mi)时,我希望它输出像“25:00”。

有没有办法在派生列转换中执行此操作? 感谢您的投入!

2 个答案:

答案 0 :(得分:1)

小时=分钟/ 60

FIELDNAME / 60.00

分钟=剩下的(模数)

FIELDNAME % 60.00

所以试试

(DT_STR, 2, 1252) (FIELDNAME / 60.00) + ":" + (DT_STR, 2, 1252) (FIELDNAME % 60.00)

答案 1 :(得分:1)

我用过这个:

Right("00" +(DT_STR,2,1252)(FIELDNAME / 60),2) + Right("00" + (DT_STR,2,1252)(FIELDNAME % 60), 2)