Zacznij terazZacznij za darmo

Zaokrąglanie dat

SQL Server nie oferuje intuicyjnego sposobu na zaokrąglenie daty w dół do miesiąca, godziny czy minuty. Możesz jednak połączyć funkcje DATEADD() i DATEDIFF(), aby wykonać takie zaokrąglenie.

Aby zaokrąglić datę 1914-08-16 w dół do roku, wywołaj DATEADD(YEAR, DATEDIFF(YEAR, 0, '1914-08-16'), 0).

Aby zaokrąglić datę w dół do miesiąca, wywołaj DATEADD(MONTH, DATEDIFF(MONTH, 0, '1914-08-16'), 0).

To podejście działa również dla kilku innych części daty.

To ćwiczenie jest częścią kursu

Analiza szeregów czasowych w SQL Server

Zobacz kurs

Instrukcje do ćwiczenia

  • Użyj DATEADD() i DATEDIFF() razem z odpowiednimi częściami daty, aby zaokrąglić czas w dół do dnia, godziny i minuty.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

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;
Edytuj i uruchom kod