0

我正在尝试复制以下 T-SQL 语句,该语句使用表达式执行我想要的操作:

TIMEVAL 是一个 4 位整数,表示 hh:mm

DATEADD(hour,(TIMEVAL/ 100) % 100, 
DATEADD(minute,(TIMEVAL/1) % 100, CAST('00:00' as time(2)))) as TimeOpened

任何帮助,将不胜感激

4

2 回答 2

1

派生列代码:

(DT_DBTIME)(SUBSTRING((DT_WSTR,4)(time),1,2) + ":" 
+ SUBSTRING((DT_WSTR,4)(time),3,4))

示例数据 1。

在此处输入图像描述

2.派生列

在此处输入图像描述

3.查看

在此处输入图像描述

于 2013-09-05T12:24:57.640 回答
0
declare @t as int = 1250;
SELECT TimeOpened = 
    Right ('0' + Convert (varchar, @t/100), 2) 
    + ':' 
    + Right ('0' + Convert (varchar, @t - ( @t/100) * 100), 2)

在表达式中: LEFT((DT_STR,4,1250)(T),2) + ":" + RIGHT((DT_STR,4,1250)(T),2)

注意:如果 T(整数时间)只有 3 位,这将给出错误的结果。但你的问题说时间是 4 位整数。

于 2013-09-04T23:21:29.723 回答