繁体   English   中英

如何从AM / PM格式的VARCHAR转换为UTC?

[英]How can I convert to UTC from VARCHAR that's in AM/PM format?

我有一个看起来像这样的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函数。 但是,我尝试执行此操作一直未成功。 怎么样?

转换为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

您需要阅读cast()convert()https : //docs.microsoft.com/zh-cn/sql/t-sql/functions/cast-and-convert-transact-sql?view=sql-服务器2017

[提示:您必须指定所需的日期/时间样式)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM