Обработка строки в TSQL для DateTime с часовым поясом - PullRequest
0 голосов
/ 05 декабря 2018

У меня есть конкретная строка формата даты и времени с часовым поясом.Мне нужно преобразовать строку в DateTime с TimeZone, а также обработать то же самое и преобразовать в UTC Time.

DECLARE @T AS VARCHAR(100)
SET @T = '2018-12-04T10:23:34+05:30'
SELECT CONVERT(DATETIME,@T,127),CONVERT(DATETIME,@T) AT TIME ZONE 'UTC'

Результат

Msg 241, Level 16, State 1, Line 3
Conversion failed when converting date and/or time from character string.

Я также пробовал без параметра преобразования 127но все равно возвращает ту же ошибку.

1 Ответ

0 голосов
/ 05 декабря 2018

Как насчет этого?

DECLARE @T AS VARCHAR(100)
SET @T = '2018-12-04T10:23:34+05:30';

SELECT CONVERT(datetimeoffset,@T,127)
      ,CONVERT(datetimeoffset,@T,127)  AT TIME ZONE 'UTC'
      ,CAST(CONVERT(datetimeoffset,@T,127)  AT TIME ZONE 'UTC' AS DATETIME2);

Просто преобразовать в dateimeoffset, а затем в UTC.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...