2017-07-25 60 views
0

在SQL Server數據庫中,我有一些與日期和時間存儲有關的數據。我有兩列:開始時間和結束時間,其中包含兩個值:未知的SQL Server時間或時間戳,這是什麼類型

635193180000000000 

到開始時間和

635193216000000000 

到結束時間。

我已經搜索瞭如何將其轉換爲「經典時間」,如「2013年9月4日」,但它不是Unix時間,我不知道它是哪種格式..?

+2

這些列的數據類型是什麼? –

+0

試試這個鏈接[unix到datetime](https://stackoverflow.com/questions/14507649/convert-unix-epoch-timestamp-to-tsql-datetime) –

+0

@ LasseV.Karlsen它是bigint – Alex

回答

2

終於找到了解決辦法多虧了這個問題:Convert specific BigInt to DateTime in T-SQL

它使用.NET Ticks,從01-01-1900午夜開始。與標準的UNIX時間不同!

因此635193180000000000給出2013-11-06​ 07:00:00.000

0

嘗試使用這樣的: -

select dateadd(s, convert(bigint, 1283174502729)/1000, convert(datetime, '1-1-1970 00:00:00')) 
+0

謝謝,但我得到一個SQL錯誤「算術溢出錯誤」。 – Alex

+0

@Alex你是如何在你的代碼中使用它的? –

+0

@Alex你可以投我的答案,如果你發現沒有什麼幫助 –

相關問題