Heim >Datenbank >MySQL-Tutorial >Wie konvertiere ich eine Ganzzahl, die die Zeit darstellt, in das Format HH:MM:SS:00 in SQL Server 2008?

Wie konvertiere ich eine Ganzzahl, die die Zeit darstellt, in das Format HH:MM:SS:00 in SQL Server 2008?

Susan Sarandon
Susan SarandonOriginal
2024-12-31 04:48:10868Durchsuche

How to Convert an Integer Representing Time to HH:MM:SS:00 Format in SQL Server 2008?

Integer-Zeit in HH:MM:SS:00 in SQL Server 2008 konvertieren

Frage:

In SQL Server 2008 ist es notwendig, einen ganzzahligen Zeitwert in das Zeitformat umzuwandeln HH:MM:SS:00. Darüber hinaus ist es wichtig zu verstehen, ob die „00“ in diesem Format Millisekunden darstellt.

Antwort:

So konvertieren Sie eine ganzzahlige Zeit in HH:MM:SS: 00 verwenden Sie die folgenden Schritte:

  1. Stunde extrahieren: Teilen Sie die ganzzahlige Zeit durch 1.000.000 und nehmen Sie den Modul 100, um den Stundenwert zu erhalten.
  2. Minute extrahieren: Teilen Sie die verbleibende ganzzahlige Zeit durch 10.000 und nehmen Sie den Modul 100, um den Minutenwert zu erhalten.
  3. Sekunde extrahieren: Teilen Sie die verbleibende ganzzahlige Zeit durch 100 und nehmen Sie die Modul 100, um den zweiten Wert zu erhalten.
  4. Millisekunde extrahieren: Multiplizieren Sie die verbleibende ganzzahlige Zeit mit 10, um den Millisekundenwert zu erhalten.

Die '00' in das Zeitformat HH:MM:SS:00 darstellt Millisekunden.

Beispiel:

Betrachten Sie die ganzzahlige Zeit 10455836.

SELECT
    (@T / 1000000) % 100 AS hour,
    (@T / 10000) % 100 AS minute,
    (@T / 100) % 100 AS second,
    (@T % 100) * 10 AS millisecond

Ergebnis:

hour    minute  second  millisecond
10      45      58      360

Alternativ können Sie für eine umfassendere Abfrage die folgende Abfrage verwenden Ergebnis:

SELECT
    DATENAME(HOUR, DATETIMEFROMPARTS(@T / 1000000 % 100, @T / 10000 % 100, @T / 100 % 100, @T % 100 * 10)) AS hour,
    DATENAME(MINUTE, DATETIMEFROMPARTS(@T / 1000000 % 100, @T / 10000 % 100, @T / 100 % 100, @T % 100 * 10)) AS minute,
    DATENAME(SECOND, DATETIMEFROMPARTS(@T / 1000000 % 100, @T / 10000 % 100, @T / 100 % 100, @T % 100 * 10)) AS second,
    DATENAME(MILLISECOND, DATETIMEFROMPARTS(@T / 1000000 % 100, @T / 10000 % 100, @T / 100 % 100, @T % 100 * 10)) AS millisecond

Ausgabe:

hour       minute   second   millisecond
10         45       58       360

Diese Methode identifiziert auch eindeutig die Zeitkomponenten als Stunde, Minute, Sekunde und Millisekunde.

Das obige ist der detaillierte Inhalt vonWie konvertiere ich eine Ganzzahl, die die Zeit darstellt, in das Format HH:MM:SS:00 in SQL Server 2008?. 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