CommencezCommencez gratuitement

Arrondir des dates

SQL Server n'offre pas une façon intuitive d'arrondir vers le bas au mois, à l'heure ou à la minute. Vous pouvez toutefois combiner les fonctions DATEADD() et DATEDIFF() pour effectuer cet arrondi.

Pour arrondir la date 1914-08-16 vers le bas à l'année, on appellerait DATEADD(YEAR, DATEDIFF(YEAR, 0, '1914-08-16'), 0).

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

Cette approche fonctionne aussi pour plusieurs autres éléments de date.

Cette activité fait partie du cours

Analyse de séries chronologiques dans SQL Server

Voir le cours

Instructions de l’exercice

  • Utilisez DATEADD() et DATEDIFF() avec des éléments de date pour arrondir notre heure vers le bas 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