Maison >base de données >tutoriel mysql >Comment arrondir les valeurs DateTime à la minute ou à l'heure la plus proche dans T-SQL ?
Arrondir la valeur datetime à la minute ou à l'heure la plus proche en T-SQL
T-SQL fournit des fonctions intégrées pour arrondir les valeurs datetime à la minute ou à l'heure la plus proche. Les valeurs arrondies sont utiles pour l'analyse des données et la génération de rapports.
Pour arrondir une valeur datetime à la minute la plus proche, utilisez la formule suivante :
<code class="language-sql">dateadd(mi, datediff(mi, 0, @dt), 0)</code>
Où, @dt
représente la valeur datetime à arrondir.
Par exemple, arrondir la valeur « 22-09-2007 15:07:38.850 » à la minute la plus proche donne « 22-09-2007 15:07:00.000 ».
Pour arrondir une valeur datetime à l'heure la plus proche, utilisez :
<code class="language-sql">dateadd(hour, datediff(hour, 0, @dt), 0)</code>
Cette formule tronque efficacement les secondes et les minutes d'une valeur datetime. En utilisant le même exemple, arrondir « 22-09-2007 15:07:38.850 » à l’heure la plus proche donne « 22-09-2007 15:00:00.000 ».
De plus, l'arrondi vers le haut ou vers le bas peut être obtenu en ajoutant une demi-minute ou une demi-heure à la valeur datetime avant la troncature.
Exemple :
<code class="language-sql">select dateadd(mi, datediff(mi, 0, dateadd(s, 30, @dt)), 0) select dateadd(hour, datediff(hour, 0, dateadd(mi, 30, @dt)), 0)</code>
Le résultat est :
<code>2007-09-22 15:08:00.000 2007-09-22 15:00:00.000</code>
Avant l'introduction du type de données date dans SQL Server 2008, une technique similaire était utilisée pour tronquer les parties heures, minutes et secondes d'une valeur datetime afin d'obtenir uniquement la date. L'idée est de déterminer le nombre de jours entre une date et une heure fixe (0, ce qui signifie 1900-01-01 00:00:00.000). En ajoutant ce nombre de jours à un instant fixe dans le temps, vous obtenez la date d'origine avec l'heure réglée à 00:00:00.000.
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!