我有一列类型,nvarchar
即170948
我想将它存储在时间类型列中
为此我写了
select @CurrentTimeValue=Convert(time, items, 108) from T
但它抛出错误
从字符串转换日期和/或时间时转换失败。
请建议正确的格式
我有一列类型,nvarchar
即170948
我想将它存储在时间类型列中
为此我写了
select @CurrentTimeValue=Convert(time, items, 108) from T
但它抛出错误
从字符串转换日期和/或时间时转换失败。
请建议正确的格式
由于所有支持的CONVERT
样式都与您的输入不匹配,因此您必须手动调整输入 - 如下所示:
DECLARE @input VARCHAR(10) = '170948'
DECLARE @modified VARCHAR(10)
SET @modified = SUBSTRING(@input, 1, 2) + ':' + SUBSTRING(@input, 3, 2) + ':' + RIGHT(@input, 2)
SELECT CAST(@modified AS TIME)
select cast(stuff(stuff('170948', 3,0,':'), 6,0,':') as time)
你也可以试试
select cast(stuff(stuff('170948', 5,0,':'), 3,0,':') as time)