我有一个包含日期值的varchar字段,如:
02042015
如何将其转换为应返回值的DATE格式:
2 Apr 2015
答案 0 :(得分:2)
您可以在{<1}}格式中使用CONVERT:
106
<强>输出强>
declare @date varchar(60) = '02042015'
select convert(varchar(20),cast(right(@date,4) + substring(@date,3,2) + left(@date,2) as datetime), 106)
答案 1 :(得分:0)
我认为会有一些转换格式,所以你可以把:
select(convert(datetime,'010109',<some magic number>))
并得到结果,但我似乎无法找到一个给出正确日期
你也可以试试这个:
declare @dt varchar(6)
select @dt = '010109'
select convert(datetime,RIGHT(@dt,2) + SUBSTRING(@dt,3,2) + LEFT(@dt,2))
答案 2 :(得分:0)
试试这个
DECLARE @V_DATE VARCHAR(20) = '02042015'
SELECT CONVERT(varchar(11),
CONVERT(datetime,RIGHT(@V_DATE,4)+LEFT(@V_DATE,2)+SUBSTRING(@V_DATE,3,2))
,106)