Heim > Datenbank > MySQL-Tutorial > Wie konvertiert man eine UTC-Datetime-Spalte in SQL-SELECT-Anweisungen in Ortszeit?

Wie konvertiert man eine UTC-Datetime-Spalte in SQL-SELECT-Anweisungen in Ortszeit?

Mary-Kate Olsen
Freigeben: 2025-01-17 04:42:09
Original
627 Leute haben es durchsucht

How to Convert a UTC Datetime Column to Local Time in SQL SELECT Statements?

Konvertieren Sie die UTC-Datums- und Uhrzeitspalte in der SQL-SELECT-Anweisung in Ortszeit

Beim Ausführen von SQL SELECT-Abfragen kann es erforderlich sein, UTC-Datums-/Uhrzeitspalten in Ortszeit zu konvertieren, um die Benutzerfreundlichkeit zu verbessern und die Genauigkeit der Datendarstellung zu verbessern. Dies kann durch Techniken erreicht werden, die für die verwendete SQL-Version spezifisch sind.

Für SQL Server 2008 oder höher:

  • Verwenden Sie die Funktion CONVERT in Kombination mit SWITCHOFFSET und CONVERT(datetimeoffset), um UTC-Spalten unter Berücksichtigung des Systemzeitzonenversatzes in Ortszeit umzuwandeln.

SQL-Syntax:

<code class="language-sql">SELECT CONVERT(datetime, 
               SWITCHOFFSET(CONVERT(datetimeoffset, 
                                    MyTable.UtcColumn), 
                            DATENAME(TzOffset, SYSDATETIMEOFFSET()))) 
       AS ColumnInLocalTime
FROM MyTable</code>
Nach dem Login kopieren
  • Alternativ können Sie zur Konvertierung die prägnantere DATEADD-Funktion verwenden.

SQL-Syntax:

<code class="language-sql">SELECT DATEADD(mi, DATEDIFF(mi, GETUTCDATE(), GETDATE()), MyTable.UtcColumn) 
       AS ColumnInLocalTime
FROM MyTable</code>
Nach dem Login kopieren

Hinweis:

Vermeiden Sie die Verwendung des Minuszeichens - zum Subtrahieren von Datumsangaben für die Konvertierung, da dies aufgrund von Wettlaufbedingungen zwischen System- und lokalen Datums- und Uhrzeitangaben zu unvorhersehbaren Ergebnissen führen kann.

Zusätzliche Hinweise:

Die bereitgestellte Methode berücksichtigt nicht die Sommerzeit (DST). Informationen zu DST-Anpassungen finden Sie im Thema „Stack Overflow“:

„So erstellen Sie Start- und Endfunktionen für die Sommerzeit in SQL Server“

Das obige ist der detaillierte Inhalt vonWie konvertiert man eine UTC-Datetime-Spalte in SQL-SELECT-Anweisungen in Ortszeit?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage