SET STATISTICS TIME (Transact-SQL)
適用対象: SQL Server
Azure SQL Database
Azure SQL Managed Instance
各ステートメントの解析、コンパイル、および実行に必要な時間をミリ秒単位で表示します。
構文
SET STATISTICS TIME { ON | OFF }
Note
SQL Server 2014 (12.x) 以前のバージョンの Transact-SQL 構文を確認するには、以前のバージョンのドキュメントを参照してください。
解説
SET STATISTICS TIME が ON の場合、ステートメントの処理時間の統計が表示されます。 OFF の場合、時間の統計は表示されません。
SET STATISTICS TIME は、解析時ではなく実行時に設定されます。
Microsoft SQL Server は、簡易プーリング構成オプションを有効にしたときに起動されるファイバー モードでは正確な統計情報を提供できません。
sysprocesses テーブル内の cpu 列が更新されるのは、SET STATISTICS TIME が ON の状態でクエリが実行されたときだけです。 SET STATISTICS TIME が OFF の場合は、0 が返されます。
この設定が ON であるか OFF であるかによって、SQL Server Management Studio の [現在の利用状況] の [プロセス情報] ビューにある CPU 列にも影響します。
アクセス許可
SET STATISTICS TIME を使用するには、Transact-SQL ステートメントを実行するための適切な権限が必要です。 SHOWPLAN 権限は必要ありません。
例
この例では、サーバーの実行、解析、コンパイルの時間を表示します。
USE AdventureWorks2022;
GO
SET STATISTICS TIME ON;
GO
SELECT ProductID, StartDate, EndDate, StandardCost
FROM Production.ProductCostHistory
WHERE StandardCost < 500.00;
GO
SET STATISTICS TIME OFF;
GO
結果セットは次のようになります。
SQL Server parse and compile time:
CPU time = 0 ms, elapsed time = 1 ms.
SQL Server parse and compile time:
CPU time = 0 ms, elapsed time = 1 ms.
(269 row(s) affected)
SQL Server Execution Times:
CPU time = 0 ms, elapsed time = 2 ms.
SQL Server parse and compile time:
CPU time = 0 ms, elapsed time = 1 ms.