如何获取“20130627T100000”格式的日期列?

时间:2013-08-01 07:37:09

标签: sql-server

我需要格式化

中的日期时间列
2008-04-28 03:00:00.000

20080428T030000

如何获得此格式?是否有内置函数?

3 个答案:

答案 0 :(得分:2)

在SQL Server 2012之前:

REPLACE(REPLACE(CONVERT(varchar(19), MyDateTimeCol, 126), ':', ''), '-', '')

SQL Server 2012

FORMAT(@MyDateTimeCol, 'yyyyMMddTHHmmss')

答案 1 :(得分:0)

我不知道接受格式字符串的函数。但您可以使用这些函数来提取时间和日期部分。这个page应该给你所有必要的提示。更确切地说,这是part

我看到没有时间部分(小时,分钟,秒,毫秒)提取,所以在这种情况下,SUBSTRING是你的朋友。

答案 2 :(得分:0)

使用DatePart功能删除日期的每个元素(dd = day,yy = year等),并将输出连接成所需的格式。

可以找到DatePart的参数here