在sql server中使用分隔符将没有分隔符的日期和时间转换为日期时间

时间:2015-09-01 07:53:19

标签: sql-server-2008 datetime formatting

我想将日期(没有任何分隔符,例如31012015)和时间(没有任何分隔符ex.0144)转换为带分隔符的日期和时间。即

31012015 => 2015年1月31日(日/月/日)

0144 => 01:44(hh:mm)

我在sql server中尝试了各种选项(使用各种date-time format),但无法找到解决方案。

3 个答案:

答案 0 :(得分:0)

由于您似乎只关心值的字符串表示形式,因此可以使用STUFF

SELECT STUFF(@time, 3, 0, ':') as NewTime,
  STUFF(STUFF(@date, 3, 0, '/'), 6, 0, '/') as NewDate

答案 1 :(得分:0)

试试这个

select replace(CONVERT(VARCHAR(10), GETDATE(), 103),'/','') as date_format, 
left(replace(CONVERT(VARCHAR(10), GETDATE(), 108),':',''),4) timeformat

答案 2 :(得分:0)

如果您希望DATETIME没有任何分隔符,则可以尝试以下操作:

SELECT
replace(convert(varchar, getdate(),112),'/','') + replace(convert(varchar, getdate(),108),':','')   
相关问题