如何使用 SQL 服务器将 Unix 时间转换为微秒?

How to convert Unix time in microseconds with SQL Server?

我已经看到很多关于将 Unix 时间从其他格式转换为日期时间的信息,但没有真正从微秒转换。您如何 SELECT 一个时间戳为 1470562081943371 的字段而不会溢出 YYYY-MM-DD 的输出 HH:MM:SS:MM?

不确定这个单位是否正确,但是...

Declare @UnixTime bigint = 1470562081943371
Select DateAdd(MS,round(((@UnixTime/1000000.)-(@UnixTime/1000000))*1000,0),DateAdd(SECOND,(@UnixTime/1000000),'1970-01-01 00:00:00'))

Returns

2016-08-07 09:28:01.943

http://www.epochconverter.com/

确认结果