Bezdepbonusu7Программирование: статьи и ответы

Вопрос

Преобразование 2013-02-04T10:30:23+00:00 в дату и время с помощью T-SQL (2005)

Автор вопроса: MehboobОтветов: 1

Привет, я застрял в преобразовании строк UTC DateTime "2013-02-04T10:30:23+00:00" в формат даты и времени Sql 2005. Я попытался convert(datetime,'2013-02-04T10:30:23+00:00',101), но выдает ошибку "Ошибка преобразования при преобразовании даты и времени из символьной строки.

Однако это работает convert(datetime,'2013-02-04 10:30:23',101).

Есть ли обходной путь для convert(datetime,'2013-02-04T10:30:23+00:00',101)?

Заранее спасибо.

datetimetype-conversionsql-server-2005

Ответы

Ответ 1 · Ivan G

Вы можете сделать это следующим образом:

DECLARE @s VARCHAR(100) = '2013-02-04T10:30:23+00:00'
SELECT  CONVERT(DATETIME, LEFT(@s, 10) + ' ' + SUBSTRING(@s, 12, 8), 101)

Это позволит извлечь необходимые части строки, объединить их в новую строку, а затем использовать CONVERT для получения DATETIME.

Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.

Похожие материалы