Как я могу конвертировать в UTC из VARCHAR в формате AM / PM? - PullRequest
0 голосов
/ 02 июля 2019

У меня есть столбец T-SQL VARCHAR, который выглядит следующим образом:

APR-10-2018 11:33:39 AM
Dec-04-2017 11:14:24 AM
DEC-01-2017 07:24:54 PM
DEC-01-2017 07:20:28 PM
DEC-01-2017 07:19:52 PM

Я хочу преобразовать его в UTC.Я понимаю, что это, вероятно, потребует использования функции CONVERT.Тем не менее, я потерпел неудачу в моих попытках сделать это.Как?

Ответы [ 2 ]

1 голос
/ 02 июля 2019

Преобразование в DateTime было бы незначительным.Однако мы не знаем, какой у вас часовой пояс или, что более важно, часовой пояс данных

Пример

Declare @YourTable table (SomeCol varchar(50))
Insert Into @YourTable values
 ('APR-10-2018 11:33:39 AM')
,('Dec-04-2017 11:14:24 AM')
,('DEC-01-2017 07:24:54 PM')
,('DEC-01-2017 07:20:28 PM')
,('DEC-01-2017 07:19:52 PM')

Select AsDateTime = try_convert(datetime,replace(SomeCol,'-',' '))
 From  @YourTable

Возвращает

AsDateTime
2018-04-10 11:33:39.000
2017-12-04 11:14:24.000
2017-12-01 19:24:54.000
2017-12-01 19:20:28.000
2017-12-01 19:19:52.000
0 голосов
/ 02 июля 2019

Вам нужно прочитать о cast() и convert(): https://docs.microsoft.com/en-us/sql/t-sql/functions/cast-and-convert-transact-sql?view=sql-server-2017

[Подсказка: вы должны указать желаемый стиль даты / времени).

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