Maison > base de données > tutoriel mysql > Comment convertir un entier représentant l'heure au format HH:MM:SS:00 dans SQL Server 2008 ?

Comment convertir un entier représentant l'heure au format HH:MM:SS:00 dans SQL Server 2008 ?

Susan Sarandon
Libérer: 2024-12-31 04:48:10
original
866 Les gens l'ont consulté

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

Convertir l'heure entière en HH:MM:SS:00 dans SQL Server 2008

Question :

Dans SQL Server 2008, il est nécessaire de transformer une valeur temporelle entière au format heure HH:MM:SS:00. De plus, il est essentiel de comprendre si le « 00 » dans ce format représente des millisecondes.

Réponse :

Pour convertir une heure entière en HH:MM:SS : 00, utilisez les étapes suivantes :

  1. Extraire l'heure : Divisez l'entier temps par 1 000 000 et prenez le module 100 pour obtenir la valeur de l'heure.
  2. Extraire la minute : Divisez le temps entier restant par 10 000 et prenez le module 100 pour obtenir la valeur des minutes.
  3. Extraire la seconde : Divisez le temps entier restant par 100 et prenez le module 100 pour obtenir la deuxième valeur.
  4. Extraire la milliseconde : Multipliez le temps entier restant par 10 pour obtenir la valeur en milliseconde.

Le « 00 » au format horaire HH:MM:SS:00 représente millisecondes.

Exemple :

Considérons le temps entier 10455836.

SELECT
    (@T / 1000000) % 100 AS hour,
    (@T / 10000) % 100 AS minute,
    (@T / 100) % 100 AS second,
    (@T % 100) * 10 AS millisecond
Copier après la connexion

Résultat :

hour    minute  second  millisecond
10      45      58      360
Copier après la connexion

Vous pouvez également utiliser la requête suivante pour plus d'informations. résultat complet :

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
Copier après la connexion

Sortie :

hour       minute   second   millisecond
10         45       58       360
Copier après la connexion

Cette méthode identifie également clairement les composantes temporelles comme l'heure, la minute, la seconde et la milliseconde.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal