将 varchar 字段转换回具有 hh:mm:ss:ms 格式的时间数据类型字段
Convert varchar field back to time datatype field with hh:mm:ss:ms format
请告诉我如何在 SQL Server 2008 R2 中重新转换为以下一位。
select replace(Convert (varchar(8), GetDate(), 108), ':', '');
我在没有任何格式的情况下将 DATETIME
数据类型列转换为 nvarchar
。只是 hhmmssms
.
我想用 hh:mm:ss:ms
格式取回我的时间值。请帮忙。
你是这个意思?
declare @VarTime as int = replace(Convert (varchar(8),GetDate(), 108),':','')
select convert(time,convert(varchar(2),(@VarTime / 10000) % 100) +':'+
convert(varchar(2),(@VarTime / 100) % 100)+':'+
convert(varchar(2),right(@VarTime,2)))
输出:
12:28:45
编辑: 如果你的日期像 hhmmssms
set @VarTime = '11223344'
select convert(varchar(2),(@VarTime / 1000000) % 100) +':'+
convert(varchar(2),(@VarTime / 10000) % 100) +':'+
convert(varchar(2),(@VarTime / 100) % 100)+':'+
convert(varchar(2),right(@VarTime,2))
请告诉我如何在 SQL Server 2008 R2 中重新转换为以下一位。
select replace(Convert (varchar(8), GetDate(), 108), ':', '');
我在没有任何格式的情况下将 DATETIME
数据类型列转换为 nvarchar
。只是 hhmmssms
.
我想用 hh:mm:ss:ms
格式取回我的时间值。请帮忙。
你是这个意思?
declare @VarTime as int = replace(Convert (varchar(8),GetDate(), 108),':','')
select convert(time,convert(varchar(2),(@VarTime / 10000) % 100) +':'+
convert(varchar(2),(@VarTime / 100) % 100)+':'+
convert(varchar(2),right(@VarTime,2)))
输出:
12:28:45
编辑: 如果你的日期像 hhmmssms
set @VarTime = '11223344'
select convert(varchar(2),(@VarTime / 1000000) % 100) +':'+
convert(varchar(2),(@VarTime / 10000) % 100) +':'+
convert(varchar(2),(@VarTime / 100) % 100)+':'+
convert(varchar(2),right(@VarTime,2))