CommencerCommencez gratuitement

Arrondir les dates

SQL Server ne propose pas de méthode évidente pour tronquer à l’unité de mois, d’heure ou de minute. Vous pouvez toutefois combiner les fonctions DATEADD() et DATEDIFF() pour effectuer cet arrondi à l’inférieur.

Pour arrondir la date 1914-08-16 à l’année, on appelle DATEADD(YEAR, DATEDIFF(YEAR, 0, '1914-08-16'), 0).

Pour arrondir la date au mois, on appelle DATEADD(MONTH, DATEDIFF(MONTH, 0, '1914-08-16'), 0).

Ce principe fonctionne aussi pour plusieurs autres parties de date.

Cet exercice fait partie du cours

<cours>Analyse de séries temporelles dans SQL Server</cours>
Voir le cours

Instructions de l’exercice

  • Utilisez DATEADD() et DATEDIFF() avec les parties de date pour tronquer notre horodatage au jour, à l’heure et à la minute.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

DECLARE
	@SomeTime DATETIME2(7) = '2018-06-14 16:29:36.2248991';

-- Fill in the appropriate functions and date parts
SELECT
	DATEADD(___, DATEDIFF(DAY, 0, @SomeTime), 0) AS RoundedToDay,
	___(___, ___(___, 0, @SomeTime), 0) AS RoundedToHour,
	___(___, ___(___, 0, @SomeTime), 0) AS RoundedToMinute;
Modifier et exécuter le code