DateTime从varchar转换

时间:2016-11-04 18:36:35

标签: sql datetime-format

我正在寻求帮助。我有一个日期字段为 2015/08 / 08T12:00GMT 用于学校项目。我在sql上只有一个类,所以我真的很新。我的情况是这样的:

我需要将varchar(50) 2015/08 / 08T12:00GMT 转换为日期类型。我不知道如何在SQL中执行此操作。我厌倦了演员,转换,并且我一直在犯错误,转换失败。

我一直在寻找,尝试不同的方法,只是没有得到结果。任何帮助都会如此有用,谢谢!

1 个答案:

答案 0 :(得分:0)

这是一个让您考虑可能的方法和解决方案的想法:

declare @T varchar(100) = '2015/08/08T12:00GMT';
select
    convert(
        datetime,
        replace(
            case when right(@T, 3) in ('GMT', 'UTC')
                then left(@T, len(@T) - 3) + ':00Z'
                else @T
            end,
            '/', '-'
        ),
        127
    );

文档详细说明了函数convert()识别的格式。