Convertir DateTime en heure
Lorsque vous utilisez CAST pour convertir un champ DateTime en heure, la sortie contient souvent des fractions de secondes ou des millisecondes, ce qui peut ne pas correspondre à ce à quoi vous vous attendez. Pour filtrer ou convertir au format exact HH:MM:SS, vous devez comprendre la représentation interne de l'heure dans SQL Server.
Stockage et format du temps
Contrairement aux formats d'affichage, les heures dans SQL Server ne sont pas intrinsèquement stockées dans un certain format. Il s'agit d'un entier de 8 octets, les 4 premiers octets représentent la date et les 4 octets restants représentent le nombre de ticks depuis minuit. Un tick représente 3,3 millisecondes.
Ainsi, les valeurs temporelles dans SQL Server existent sous forme de valeurs entières et non dans un format spécifique.
Convertir au format de caractères
Pour obtenir le format HH:MM:SS, vous devez utiliser la fonction CONVERT pour convertir en type de caractère :
<code class="language-sql">SELECT CONVERT(char(10), [time], 108) as CSTTime</code>
Description
char(10)
spécifie une chaîne de caractères de longueur 10. 108
est un code de style spécifiant le format HH:MM:SS. Ce processus de conversion convertira la valeur temporelle en une chaîne de caractères au format HH:MM:SS requis.
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!