Maison >base de données >tutoriel mysql >Comment convertir SQL Server DateTime au format d'heure HH:MM:SS ?

Comment convertir SQL Server DateTime au format d'heure HH:MM:SS ?

Patricia Arquette
Patricia Arquetteoriginal
2025-01-21 08:32:09452parcourir

How to Convert SQL Server DateTime to HH:MM:SS Time Format?

Convertir DateTime en heure au format HH:MM:SS

Dans SQL Server, le type de données Time stocke les valeurs temporelles mais n'inclut pas de format d'affichage spécifique. Pour extraire une valeur temporelle au format HH:MM:SS, nous devons convertir le champ DateTime en chaîne de caractères.

À l'aide de la fonction CONVERT, nous pouvons convertir le champ DateTime en une chaîne au format souhaité comme suit :

<code class="language-sql">SELECT CONVERT(varchar(8), CAST([datetime] AS TIME), 108) AS [CSTTime]</code>

Instructions :

    La fonction
  • CONVERT convertit le champ [datetime] en chaîne de caractères.
  • Le paramètre
  • varchar(8) précise la longueur de la chaîne résultat (8 caractères dans ce cas). Utiliser varchar est plus efficace que char car varchar ne stocke que le nombre réel de caractères utilisés.
  • CAST([datetime] AS TIME) Convertit la valeur datetime en type de données TIME, en supprimant la partie date.
  • Le code de style
  • 108 demande à SQL Server de convertir les valeurs de temps au format HH:MM:SS, en ignorant les millisecondes.

Exemple :

Étant donné la valeur DateTime '2015-03-19 00:00:00.000', la requête ci-dessus renverra '00:00:00'. Notez que si datetime contient des informations temporelles, ces informations temporelles seront renvoyées.

Contexte technique :

En interne, SQL Server stocke la valeur Time sous la forme d'un entier de 4 octets représentant le nombre de tics d'horloge après minuit. Chaque tick représente 3,3 millisecondes. Par conséquent, le type de données Time lui-même n’a pas de format d’affichage spécifique.

Lors de la conversion d'un DateTime en Time à l'aide de la syntaxe CAST, les millisecondes sont conservées dans la valeur Time résultante. Pour obtenir une chaîne formatée au format HH:MM:SS, vous devez utiliser la fonction CONVERT. Utiliser CAST pour convertir d'abord la valeur en type TIME, puis utiliser CONVERT pour formater la sortie, garantit des résultats de conversion plus clairs et plus précis.

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!

Déclaration:
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