首頁 > 資料庫 > mysql教程 > 如何在 SQL Server 中將 UNIX 時間戳記轉換為日期時間?

如何在 SQL Server 中將 UNIX 時間戳記轉換為日期時間?

Linda Hamilton
發布: 2025-01-17 16:17:10
原創
526 人瀏覽過

How to Convert UNIX Timestamps to DateTime in SQL Server?

SQL Server:將 UNIX 時間戳記轉換為日期時間

UNIX 時間戳,儲存為 bigint 值,表示自 Unix 紀元(1970 年 1 月 1 日,00:00:00 UTC)以來經過的秒數。 將它們轉換為 SQL Server 的 DATETIME 格式可以簡化資料庫管理。

一個簡單的方法使用DATEADD:

<code class="language-sql">SELECT DATEADD(second, [unixtime], '19700101')
FROM [Table];</code>
登入後複製

這會將 unixtime(來自 [unixtime] 欄位)加到紀元日期,產生對應的 DATETIME

了解時代

'19700101'代表紀元-UNIX時間戳系統的原點。將時間戳記到該日期可以有效地將數字時間戳轉換為人類可讀的日期和時間。

解決 2038 年問題

DATEADD 的整數限制(最大 2,147,483,647 秒)對超過此值的時間戳提出了挑戰。 為了處理 2038 年之後的日期,需要一種更強大的方法,可能涉及將時間戳拆分為年份和剩餘秒數部分,以進行單獨的 DATEADD 操作。 這可以避免算術溢出錯誤。

以上是如何在 SQL Server 中將 UNIX 時間戳記轉換為日期時間?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板