2015-08-28 144 views
1

道歉我的帽子打破了中期标题。将时代转换为DateTime SQL Server

我遇到的问题有以下:

dateadd(S, [unixtime], '1970-01-01') 

到时代转换为datetime在SQL Server中,但收到以下错误:

Arithmetic overflow error converting expression to data type int.

很显然,这意味着时代太大为int?即使此代码以前工作过;奇怪的。有没有办法用bigint调用它?

如时代:

1440753397054 

,我相信限制为10位,这样的选择?

+1

什么是[unixtime]典型的价值?你确定它们是秒而不是毫秒,即x1000? – Micke

回答

1

您的时间戳记在毫秒秒。尝试除以1000,我相信它会起作用。

1440753397054/1000 = 1440753397,054对应于(假定GMT):

周五,2015年8月28日九时16分37秒GMT

+1

在sql server中测试过,需要删除c#中最后3位数字,谢谢。 – thatguy

相关问题