加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

sql-server – 将UTC毫秒转换为SQL Server中的DATETIME

发布时间:2020-12-12 16:17:19 所属栏目:MsSql教程 来源:网络整理
导读:我想在UTC服务器中将UTC毫秒转换为DateTime. 这可以很容易地通过以下代码在C#中完成: DateTime startDate = new DateTime(1970,1,1).AddMilliseconds(1348203320000); 我需要在SQL服务器上这样做.我发现了一些脚本here,但是这是从1900-01-01开始的. 我已经使
我想在UTC服务器中将UTC毫秒转换为DateTime.

这可以很容易地通过以下代码在C#中完成:

DateTime startDate = new DateTime(1970,1,1).AddMilliseconds(1348203320000);

我需要在SQL服务器上这样做.我发现了一些脚本here,但是这是从1900-01-01开始的.

我已经使用了DATEADD函数如下,但是这是通过以毫秒为单位给出一个算术溢出异常:

SELECT DATEADD(MILLISECOND,1348203320000,'1970-1-1')

如何正确进行转换?

解决方法

DECLARE @UTC BIGINT
SET @UTC = 1348203320997 

SELECT DATEADD(MILLISECOND,@UTC % 1000,DATEADD(SECOND,@UTC / 1000,'19700101'))

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读