2015-08-28 136 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