SQL Server SYSDATETIMEOFFSET 函数是一个日期函数,它返回当前运行服务器实例的计算机的当前日期和时间以及时区偏移量的 datetimeoffset (7)。SYSDATETIMEOFFSET 语句的语法是:
SYSDATETIMEOFFSET()
SQL SYSDATETIMEOFFSET 函数示例
SYSDATETIMEOFFSET 函数返回的格式是:“yyyy-mm-dd hh:mm:ss.nnnnnnn”(您可以看到,小数秒精度=7),数据类型为 datetime2。
SELECT SYSDATETIMEOFFSET() AS [Current_Date];

SYSDATETIMEOFFSET 示例 2
此函数返回 datetime2 类型的当前系统日期和时间。在此示例中,我们将向您展示 SYSDATETIMEOFFSET 函数及示例。
- 在前面的四个 SQL Server 语句中,我们使用 DATEPART 函数从今天的日期和时间中显示年份、毫秒、微秒和纳秒。
- 接下来,我们使用 DATENAME 函数从今天的日期和时间中显示星期几的名称。
- 最后,我们使用 DATEADD 函数显示明天的日期和时间。
SELECT 'Today' AS 'TODAY', SYSDATETIMEOFFSET() AS [Current_Date]; SELECT 'Milli Seconds' AS 'MILLI', DATEPART(millisecond, SYSDATETIMEOFFSET()) AS [Milli_Seconds]; SELECT 'Micro Seconds' AS 'MICRO', DATEPART(microsecond, SYSDATETIMEOFFSET()) AS [Micro_Seconds]; SELECT 'Nano Seconds' AS 'NANO', DATEPART(nanosecond, SYSDATETIMEOFFSET()) AS [Nano_Seconds]; SELECT 'Year' AS 'YEAR', DATEPART(year, SYSDATETIMEOFFSET()) AS [Present_Year]; SELECT 'Month' AS 'MONTH', DATENAME(month, SYSDATETIMEOFFSET()) AS [Month_Name]; SELECT 'Tomorrow' AS 'DAY', DATEADD(day, 1, SYSDATETIMEOFFSET()) AS [Next_Day];

SQL Server SYSDATETIMEOFFSET 示例 3
在此 SYSDATETIMEOFFSET 函数示例中,我们将使用 DATEDIFF 函数查找变量与当前 Datetime 之间的分钟、秒和毫秒差。
DECLARE @datetime DATETIME2 SET @datetime = '2016-08-27 05:45:22.3021234' SELECT 'Minutes_Difference' AS 'MINUTE', DATEDIFF(MINUTE, @datetime, SYSDATETIMEOFFSET()) AS [Number of Minutes]; SELECT 'Seconds_Difference' AS 'SECOND', DATEDIFF(SECOND, @datetime, SYSDATETIMEOFFSET()) AS [Number of Seconds]; SELECT 'Millisecond_Diff' AS 'MILLISECOND', DATEDIFF(MILLISECOND, @datetime, SYSDATETIMEOFFSET()) AS [Number of MilliSeconds];

从上面的截图可以看出,我们使用了 DATEDIFF 日期和时间函数。它查找当前日期和时间偏移量与我们声明的 @datetime 变量之间的差异。我建议您参考 DATEDIFF 函数文章来理解上面的代码。