Heim >Datenbank >MySQL-Tutorial >Wie erstelle ich ein UNIX_TIMESTAMP()-Äquivalent in SQL Server?

Wie erstelle ich ein UNIX_TIMESTAMP()-Äquivalent in SQL Server?

Barbara Streisand
Barbara StreisandOriginal
2025-01-04 20:34:40785Durchsuche

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

Erstellen eines UNIX_TIMESTAMP()-Äquivalents in SQL Server

Die UNIX_TIMESTAMP()-Funktion von MySQL ermöglicht es Benutzern, einen Datums-/Uhrzeitwert in eine Zahl umzuwandeln Sekunden seit der Unix-Epoche (1970-01-01 00:00:00 UTC). Um eine ähnliche Funktionalität in SQL Server 2008 zu erreichen, können wir eine einfache Berechnung anwenden:

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

Diese Berechnung subtrahiert die Anzahl der Sekunden zwischen der Unix-Epoche und dem angegebenen DateField. Um beispielsweise das Datum „2022-12-31 12:00:00“ in einen Unix-Zeitstempel umzuwandeln, würden wir Folgendes ausführen:

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

Dies ergibt das Ergebnis: 1672531200, was die Anzahl der Sekunden darstellt seit der Unix-Epoche.

Wenn Sie jedoch Millisekundengenauigkeit benötigen (verfügbar in SQL Server 2016/13.x und höher) können Sie die folgende Berechnung verwenden:

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

Diese Berechnung gibt die Anzahl der Millisekunden seit der Unix-Epoche mit größerer Genauigkeit zurück.

Das obige ist der detaillierte Inhalt vonWie erstelle ich ein UNIX_TIMESTAMP()-Äquivalent in SQL Server?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn