sql >> Database teknologi >  >> RDS >> Sqlserver

Hvordan konverteres et heltal (tid) til TT:MM:SS::00 i SQL Server 2008?

declare @T int

set @T = 10455836
--set @T = 421151

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

select dateadd(hour, (@T / 1000000) % 100,
       dateadd(minute, (@T / 10000) % 100,
       dateadd(second, (@T / 100) % 100,
       dateadd(millisecond, (@T % 100) * 10, cast('00:00:00' as time(2))))))  

Resultat:

hour        minute      second      millisecond
----------- ----------- ----------- -----------
10          45          58          360

(1 row(s) affected)


----------------
10:45:58.36

(1 row(s) affected)


  1. Hvorfor bliver SQL Server-skalære funktioner langsommere?

  2. Hvorfor får jeg kontrolsumfejl på hver dårlig SQL-anmodning i Oracle, når Native Encryption (ASO) er aktiveret?

  3. SQL-kloning og konvertering af en datokolonne

  4. Spring data JPA kun én sammensat nøgle er automatisk inkrementeret problem