从Getdate获取时间()

New*_*rus 4 sql t-sql sql-server time

我想取Getdate()结果,

例如

2011-10-05 11:26:55.000
Run Code Online (Sandbox Code Playgroud)

11:26:55 AM
Run Code Online (Sandbox Code Playgroud)

我看了其他地方,发现了

Select RIGHT(CONVERT(VARCHAR, GETDATE(), 100),7)
Run Code Online (Sandbox Code Playgroud)

这给了我

11:26AM
Run Code Online (Sandbox Code Playgroud)

它非常接近,我可以尝到它!

Jam*_*iec 21

select convert(varchar(10), GETDATE(), 108)
Run Code Online (Sandbox Code Playgroud)

17:36:56我刚刚运行它时返回.


Nil*_*kar 9

您可能想查看这个旧线程.

如果您可以省略AM/PM部分并使用SQL Server 2008,则应该采用此处建议的方法

要及时摆脱nenoseconds(SQL Server 2008),请执行以下操作:

SELECT CONVERT(TIME(0),GETDATE()) AS HourMinuteSecond
Run Code Online (Sandbox Code Playgroud)

我希望它有所帮助!!


Mar*_*elo 5

你有没有试着不时地做演员?

select cast(getdate() as time)

回顾这个问题,我在结尾看到了“AM/PM”。所以,我对这个问题的回答是:

select format(getdate(), 'hh:mm:ss tt')

在 Microsoft SQL Server 2012 及更高版本上运行。


小智 0

如果是 SQL Server 2005,则没有TIME数据类型。仅获取时间部分的最简单方法是将日期设置为 1/1/1900。

DECLARE @time DATETIME

SET @Time = GETDATE()

SELECT DATEADD(dd,DATEDIFF(dd,@time,'1/1/1900'),@time)
Run Code Online (Sandbox Code Playgroud)