SQL Server:如何在YYYYMMDDHHMISSMSS中获取当前日期时间

时间:2011-07-23 17:54:19

标签: sql sql-server tsql

我需要YYYYMMDDHHMISSMIS

格式的当前日期时间

示例:

20110723233747607

通过使用CURRENT_TIMESTAMPgetdate()函数,我们可以将当前日期时间检索为2011-07-23 23:37:47.607格式。如果我使用REPLACECONVERT函数删除“ - ”和“:”字符,那么我将值转换为

Jul 23 2011 11:37PM

...格式。但我需要将当前日期时间20110723233747607用于我的另一个目的。

我的SQL查询是:

SELECT REPLACE(CONVERT(VARCHAR(20), CURRENT_TIMESTAMP),'.','')

输出:Jul 23 2011 11:37PM

那么如何以我所需的格式获取当前日期时间?请帮助。

2 个答案:

答案 0 :(得分:13)

select replace(
       replace(
       replace(
       replace(convert(varchar(23), getdate(), 121),
       '-',''),
       '.',''),
       ' ',''),
       ':','')

答案 1 :(得分:1)

我不知道为什么你需要使用这么多的REPLACE()函数。函数的使用确实减少了执行时间。我在下面使用了两个CONVERT和一个REPLACE函数。

SELECT CONVERT(VARCHAR(8), GETDATE(), 112) + REPLACE(CONVERT(VARCHAR(12), GETDATE(), 114),':','')