如何在SQL Server中将yyyymmddMilliseconds转换为datetime?

Rya*_*yan 1 sql sql-server datetime

我得到了一个包含yyyymmddMilliseconds格式的时间数据的表.例如,20100218000051234.如何将其转换为DateTime类型?在SQL Server 2008中.

KM.*_*KM. 6

试试这个:

declare @x varchar(50)
set @x='20100218000051234'
select DATEADD(ms,CONVERT(int,RIGHT(@x,9)),CONVERT(datetime,LEFT(@x,8)))
Run Code Online (Sandbox Code Playgroud)

产量

-----------------------
2010-02-18 00:00:51.233

(1 row(s) affected)
Run Code Online (Sandbox Code Playgroud)