我有数据20160526094432,我想在SQLServer中转换为datetime 结果将是2016-05-26 09:44:32
有简单的方法吗?
由于
答案 0 :(得分:1)
如果您使用MS SQL Server 2012或更高版本,则可以享受format
功能。
select cast(format(20160526094432,'####-##-## ##:##:##') as datetime) [date-time]
如果你的长号是一个字符串,那么你必须转换它。
declare @d varchar(20)='20160526094432'
select cast(format(cast(@d as bigint),'####-##-## ##:##:##') as datetime) [date-time]
答案 1 :(得分:0)
嗯。我不认为真的干净的方式,但这样的事情应该有效:
select (convert(datetime, left(col, 8) as datetime) +
convert(datetime, convert(time,
stuff(stuff(right(col, 6), 5, 0, ':'), 3, 0, ':')
)
)
)
答案 2 :(得分:0)
也许您可以尝试这种方式,例如,Date是您的表格列,103是您要转换的日期格式,google了解更多详情。
CONVERT(datetime, Date, 103)