Sql server 2005 如何将getdate格式化为YYYYMMDDHHmmSS
在SQL Server中,如何将Sql server 2005 如何将getdate格式化为YYYYMMDDHHmmSS,sql-server-2005,getdate,Sql Server 2005,Getdate,在SQL Server中,如何将getdate()输出格式化为YYYYMMDDHHmmSS其中HH是24小时格式 我已经完成了YYYYMMDD的 select CONVERT(varchar,GETDATE(),112) 但这就是我所能做到的 谢谢。很接近,但不是你想要的: select CONVERT(varchar, GETDATE(), 126) e、 g (yyyy-mm ddThh:mi:ss.mmm(无空格),ISO8601无时区) 参考: 无法使用CONVERT()指定自定义格
getdate()
输出格式化为YYYYMMDDHHmmSS
其中HH
是24小时格式
我已经完成了YYYYMMDD的
select CONVERT(varchar,GETDATE(),112)
但这就是我所能做到的
谢谢。很接近,但不是你想要的:
select CONVERT(varchar, GETDATE(), 126)
e、 g
(yyyy-mm ddThh:mi:ss.mmm(无空格),ISO8601无时区)
参考:
无法使用CONVERT()
指定自定义格式。另一个选项是执行字符串操作以创建所需的格式。尝试以下操作:
选择CONVERT(varchar,GETDATE(),120)
e、 g
2011-09-23 12:18:24
(yyyy-mm-dd-hh:mi:ss(24小时),ODBC规范)
Hth.对于任何搜索此功能的SQL Server 2012用户,您可以使用格式功能:
SELECT FORMAT ( GETDATE(), 'yyyyMMddHHmmss') AS 'Custom DateTime'
这允许任何.NET格式的字符串使其成为有用的新添加。以这种方式转换datetime需要多次调用才能转换。最好的用法是在返回varchar的函数中
select CONVERT(varchar,GETDATE(),112) --YYYYMMDD
select CONVERT(varchar,GETDATE(),108) --HH:MM:SS
在函数中这样将它们放在一起
DECLARE @result as varchar(20)
set @result = CONVERT(varchar,GETDATE(),112) + ' ' + CONVERT(varchar,GETDATE(),108)
print @result
20131220 13:15:50
正如Thinhbk发布的那样,您可以使用selectconvert(varchar,getdate(),20)
或selectconvert(varchar,getdate(),120)
非常接近您想要的内容。另一个选项
SELECT CONVERT(nvarchar(8), GETDATE(),112) +
CONVERT(nvarchar(2),DATEPART(HH,GETDATE())) +
CONVERT(nvarchar(2),DATEPART(MI,GETDATE())) +
CONVERT(nvarchar(2),DATEPART(SS,GETDATE()));
+1-非常有用。现在您可以使用.net framework中的所有这些datetime.tostring格式。谢谢,为我工作!
DECLARE @result as varchar(20)
set @result = CONVERT(varchar,GETDATE(),112) + ' ' + CONVERT(varchar,GETDATE(),108)
print @result
SELECT CONVERT(nvarchar(8), GETDATE(),112) +
CONVERT(nvarchar(2),DATEPART(HH,GETDATE())) +
CONVERT(nvarchar(2),DATEPART(MI,GETDATE())) +
CONVERT(nvarchar(2),DATEPART(SS,GETDATE()));
select CONVERT(nvarchar(8),getdate(),112) +
case when Len(CONVERT(nvarchar(2),DATEPART(HH,getdate()))) =1 then '0' + CONVERT(nvarchar(2),DATEPART(HH,getdate())) else CONVERT(nvarchar(2),DATEPART(HH,getdate())) end +
case when Len( CONVERT(nvarchar(2),DATEPART(MI,getdate())) ) =1 then '0' + CONVERT(nvarchar(2),DATEPART(MI,getdate())) else CONVERT(nvarchar(2),DATEPART(MI,getdate())) end