在此站点以及其他站点上都进行了很多研究,但是仍然没有有效的解决方案。我有一列varchar
数据类型,它包含DateTime
数据。我只需要将一部分存储Date
在Date
类型列中。尝试了Cast,Convert和其他功能的不同方式,但仍无法使其正常工作。
基本上我想转换这个
Tue Apr 26 2016 13:54:53 GMT+0200 (CEST)
至
04/26/2016
假设您的“日期和月份”部分始终为3个字符长,则可以这样简单地完成操作:
DECLARE @d VARCHAR(100)='Tue Apr 26 2016 13:54:53 GMT+0200 (CEST)';
SELECT CONVERT(DATE,SUBSTRING(@d,4,12),109);
如果这很容易的话,您必须使用来查找空白CHARINDEX
,但我不这么认为...
格式代码在这里109
表示“mon dd yyyy hh:mi:ss:mmmAM (or PM)
详细信息”。
并且请注意,包含语言相关部分的格式是由魔鬼直接发送的,以产生永无止境的痛苦……这在具有不同语言设置的服务器上将不起作用!
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句