@@IDLE (Transact-SQL)

返回 SQL Server 自上次启动后的空闲时间。 结果以 CPU 时间增量或“时钟周期”表示,并且是所有 CPU 的累积,因此该值可能超过实际经过的时间。 乘以 @@TIMETICKS 即可转换为微秒。

备注

如果以 @@CPU_BUSY 形式返回时间,或者 @@IO_BUSY 超过累计 CPU 时间大约 49 天,则会收到算术溢出警告。在这种情况下,@@CPU_BUSY、@@IO_BUSY 和 @@IDLE 变量值并不精确。

适用范围:SQL Server(SQL Server 2008 到当前版本)。

主题链接图标 Transact-SQL 语法约定

语法

@@IDLE

返回类型

integer

注释

若要显示包含几种 SQL Server 统计信息的报告,请运行 sp_monitor

示例

以下示例将返回 SQL Server 自启动到当前时间的空闲毫秒数。 为了避免将值转换为微秒时出现算术溢出,此示例将其中一个值转换为 float 数据类型。

SELECT @@IDLE * CAST(@@TIMETICKS AS float) AS 'Idle microseconds',
   GETDATE() AS 'as of';

下面是结果集:

I
Idle microseconds  as of                 
----------------- ----------------------
8199934           12/5/2006 10:23:00 AM 

请参阅

参考

@@CPU_BUSY (Transact-SQL)

sp_monitor (Transact-SQL)

@@IO_BUSY (Transact-SQL)

系统统计函数 (Transact-SQL)