在 T-SQL 中将以毫秒为单位的 Epoch 转换为日期
Posted
技术标签:
【中文标题】在 T-SQL 中将以毫秒为单位的 Epoch 转换为日期【英文标题】:Convert Epoch with milliseconds into Date in T-SQL 【发布时间】:2016-09-28 02:30:46 【问题描述】:我遇到了一个附加毫秒的纪元时间戳问题。
我的纪元时间戳的格式是:
1439263190,2609999
内置的 dateadd 函数只能处理 int
值。
有什么解决方法吗?
KR约翰
【问题讨论】:
试试***.com/questions/14716744/… 或***.com/questions/12524537/… 2609999 毫秒?您提供的价值的日期时间应该是什么? 我需要一个类似于“27.07.2015 21:00:00.004”的日期时间,毫秒需要 3 位小数。 【参考方案1】:纪元时间(又称 Unix 时间)是自 1970 年 1 月 1 日午夜以来的秒数。
要解决仅处理整数值的 DateAdd 函数,只需将值分配给一个整数变量并在对 DateAdd 的调用中使用它。
例如这段代码:
declare @epoch decimal(20,7) = 1439263190.2609999
declare @epoch2 int = @epoch
select @epoch, @epoch2, DATEADD(s, @epoch2, '1970-01-01 00:00:00')
给出这个结果:
1439263190.2609999 1439263190 2015-08-11 03:19:50.000
【讨论】:
以上是关于在 T-SQL 中将以毫秒为单位的 Epoch 转换为日期的主要内容,如果未能解决你的问题,请参考以下文章
Razor 视图中的 Epoch/Unix 时间戳(以毫秒为单位)到日期时间
XQuery 中是不是有任何方法可以获取自某个 Epoch 以来的当前时间(以毫秒为单位)?
自Javascript中的unix时代以来,如何以毫秒为单位获取时间? [复制]