Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Menukar Masa Mewakili Integer kepada Format HH:MM:SS:00 dalam SQL Server 2008?

Bagaimana untuk Menukar Masa Mewakili Integer kepada Format HH:MM:SS:00 dalam SQL Server 2008?

Susan Sarandon
Susan Sarandonasal
2024-12-31 04:48:10866semak imbas

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

Tukar Masa Integer kepada HH:MM:SS:00 dalam SQL Server 2008

Soalan:

Dalam SQL Server 2008, adalah perlu untuk mengubah nilai masa integer ke dalam format masa HH:MM:SS:00. Selain itu, adalah penting untuk memahami sama ada '00' dalam format ini mewakili milisaat.

Jawapan:

Untuk menukar masa integer kepada HH:MM:SS: 00, gunakan langkah berikut:

  1. Ekstrak Jam: Bahagikan masa integer dengan 1,000,000 dan ambil modulus 100 untuk mendapatkan nilai jam.
  2. Ekstrak Minit: Bahagikan baki masa integer dengan 10,000 dan ambil modulus 100 mendapatkan minit nilai.
  3. Ekstrak Kedua: Bahagikan baki masa integer dengan 100 dan ambil modulus 100 untuk mendapatkan nilai kedua.
  4. Ekstrak Milisaat: Darab baki masa integer dengan 10 untuk mendapatkan milisaat nilai.

'00' dalam format masa HH:MM:SS:00 mewakili milisaat.

Contoh:

Pertimbangkan masa integer 10455836.

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

Keputusan:

hour    minute  second  millisecond
10      45      58      360

Sebagai alternatif, anda boleh menggunakan pertanyaan berikut untuk mendapatkan lebih komprehensif hasil:

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

Output:

hour       minute   second   millisecond
10         45       58       360

Kaedah ini juga mengenal pasti komponen masa dengan jelas sebagai jam, minit, saat dan milisaat.

Atas ialah kandungan terperinci Bagaimana untuk Menukar Masa Mewakili Integer kepada Format HH:MM:SS:00 dalam SQL Server 2008?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn