首頁 >資料庫 >mysql教程 >如何在 SQL Server 中建立 UNIX_TIMESTAMP() 等效項?

如何在 SQL Server 中建立 UNIX_TIMESTAMP() 等效項?

Barbara Streisand
Barbara Streisand原創
2025-01-04 20:34:40786瀏覽

How to Create a UNIX_TIMESTAMP() Equivalent in SQL Server?

在SQL Server 中建立UNIX_TIMESTAMP() 等效項

MySQL 的UNIX_TIMESTAMP() 函數允許使用者將日期時間值轉換為數字自Unix 紀元(1970-01-01 00:00:00世界標準時間)。為了在 SQL Server 2008 中實現類似的功能,我們可以採用一個簡單的計算:

SELECT DATEDIFF(s, '1970-01-01 00:00:00', DateField);

此計算減去 Unix 紀元和指定 DateField 之間的秒數。例如,要將日期「2022-12-31 12:00:00」轉換為Unix 時間戳,我們將執行:

SELECT DATEDIFF(s, '1970-01-01 00:00:00', '2023-01-01 12:00:00');

這將產生結果:1672531200,它代表秒數自Unix 紀元以來。

但是,如果您需要毫秒精度(可在SQL Server 2016/13.x 及更高版本),您可以使用以下計算:

SELECT DATEDIFF_BIG(ms, '1970-01-01 00:00:00', DateField);

此計算以更高的精度返回自Unix 紀元以來的毫秒數。

以上是如何在 SQL Server 中建立 UNIX_TIMESTAMP() 等效項?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn