📅  最后修改于: 2023-12-03 15:26:57.215000             🧑  作者: Mango
有时候我们需要在 SQL Server 中获得当前的时间,但是不希望返回日期信息。本文将介绍如何在 SQL Server 中获得没有日期信息的当前时间。
在 SQL Server 中,可以使用 GETDATE() 函数获得当前时间,例如:
SELECT GETDATE() AS CurrentTime;
上述代码将返回当前的日期时间,例如:
2022-01-28 15:37:35.123
如果我们只想要时间部分,可以使用 CONVERT() 函数去掉日期信息,例如:
SELECT CONVERT(VARCHAR(8), GETDATE(), 108) AS CurrentTime;
上述代码将返回当前时间,例如:
15:37:35
除了 GETDATE() 函数,SQL Server 2012 中还引入了 SYSDATETIME() 函数,它可以获得当前的日期时间,精度可以达到纳秒级别。例如:
SELECT SYSDATETIME() AS CurrentTime;
上述代码将返回带有日期时间信息的当前时间,例如:
2022-01-28 15:37:35.9876543
如果我们只想要时间部分,可以使用 CONVERT() 函数去掉日期信息,例如:
SELECT CONVERT(VARCHAR(12), SYSDATETIME(), 108) AS CurrentTime;
上述代码将返回当前时间,例如:
15:37:35.987
如果我们需要获取的是 UTC 时间,可以使用 GETUTCDATE() 函数,例如:
SELECT GETUTCDATE() AS CurrentTime;
上述代码将返回带有日期时间信息的当前 UTC 时间,例如:
2022-01-28 07:37:35.123
如果我们只想要时间部分,可以使用 CONVERT() 函数去掉日期信息,例如:
SELECT CONVERT(VARCHAR(8), GETUTCDATE(), 108) AS CurrentTime;
上述代码将返回当前 UTC 时间,例如:
07:37:35
在 SQL Server 中,我们可以使用 GETDATE() 函数、SYSDATETIME() 函数以及 GETUTCDATE() 函数来获取当前的时间信息。如果我们不需要日期信息,可以使用 CONVERT() 函数去掉日期部分。在使用时需要注意时区的问题。