НачатьНачать бесплатно

Знакомство с типобезопасными функциями для работы с датами

В этом упражнении мы рассмотрим функции TRY_CONVERT(), TRY_CAST() и TRY_PARSE(). Каждая из них безопасно разбирает строковые данные и пытается преобразовать их в другой тип, возвращая NULL в случае неудачи. Преобразование в тип даты может завершиться ошибкой по разным причинам. Если входная строка не является датой, преобразование не выполнится. Если формат входной строки неоднозначен, преобразование также может не сработать. Пример такой ситуации — дата 04/01/2019: в США она означает 1 апреля 2019 года, тогда как в большинстве европейских стран — 4 января 2019 года.

Это упражнение является частью курса

Анализ временных рядов в SQL Server

Посмотреть курс

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

DECLARE
	@GoodDateINTL NVARCHAR(30) = '2019-03-01 18:23:27.920',
	@GoodDateDE NVARCHAR(30) = '13.4.2019',
	@GoodDateUS NVARCHAR(30) = '4/13/2019',
	@BadDate NVARCHAR(30) = N'SOME BAD DATE';

SELECT
	-- Fill in the correct data type based on our input
	___(DATETIME2(3), @GoodDateINTL) AS GoodDateINTL,
	-- Fill in the correct function
	___(DATE, @GoodDateDE) AS GoodDateDE,
	___(DATE, @GoodDateUS) AS GoodDateUS,
	-- Fill in the correct input parameter for BadDate
	___(DATETIME2(3), ___) AS BadDate;
Редактировать и запускать код