Знакомство с типобезопасными функциями для работы с датами
В этом упражнении мы рассмотрим функции 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;