我有一个CPTIME列,数据类型为decimal(6,0)。当前值看起来像165750.我需要它以时间格式16:57:50。有没有办法做到这一点?我看到过一些类似的问题,但那是十进制小时/分钟(即16.57为16:57),这里不适用。
答案 0 :(得分:1)
您可以将其转换为CHAR,然后添加冒号,最后将其转换回TIME,如下所示:
SELECT (STUFF(STUFF(RIGHT('000000' + CAST(135 AS VARCHAR(6)), 6), 5, 0, ':'), 3, 0, ':'))
如果您的数字少于6位,则“000000”连接将填入零,然后我们选择最右边的6位数字。