SET STATISTICS IO (Transact-SQL)

SQL Server で、Transact-SQL ステートメントのディスク利用状況に関する情報を表示します。

トピック リンク アイコンTransact-SQL 構文表記規則

構文

SET STATISTICS IO { ON | OFF }

説明

STATISTICS IO が ON の場合、統計情報が表示されます。OFF の場合、情報は表示されません。

返される情報は、このオプションが ON に設定されてから OFF に設定されるまでに実行される、すべての Transact-SQL ステートメントに関する統計情報です。

次の表は、出力アイテムの一覧とその説明です。

出力アイテム

意味

Table

テーブルの名前

Scan count

実行されたインデックス スキャンまたはテーブル スキャンの回数

logical reads

データ キャッシュから読み取られたページ数

physical reads

ディスクから読み取られたページ数

read-ahead reads

クエリ用のキャッシュに読み取られたページ数

lob logical reads

データ キャッシュから読み取られた、text、ntext、image 型、またはサイズの大きな値をとるデータ型 (varchar(max)、nvarchar(max)、varbinary(max)) のページの数

lob physical reads

ディスクから読み取られた、text、ntext、image 型、またはサイズの大きな値をとるデータ型のページの数

lob read-ahead reads

クエリ用のキャッシュに読み込まれた、text、ntext、image 型、またはサイズの大きな値をとるデータ型のページの数。

SET STATISTICS IO は、解析時ではなく実行時に設定されます。

注意

Transact-SQL ステートメントで LOB 列を取得するとき、LOB 取得操作で LOB ツリーを複数回移動することが必要になる場合があります。その結果、SET STATISTICS IO では、予想より多くの論理読み取り数が報告されることがあります。

権限

SET STATISTICS IO を使用するには、Transact-SQL ステートメントを実行するための適切な権限が必要です。SHOWPLAN 権限は必要ありません。

詳細については、「プラン表示のセキュリティ」を参照してください。

次の例では、SQL Server でステートメントの処理に使用された論理読み取りと物理読み取りの数を示します。

USE AdventureWorks2008R2;
GO       
SET STATISTICS IO ON;
GO
SELECT * 
FROM Production.ProductCostHistory
WHERE StandardCost < 500.00;
GO
SET STATISTICS IO OFF;
GO

次に結果セットを示します。

Table 'ProductCostHistory'. Scan count 1, logical reads 5, physical 
reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, 
lob read-ahead reads 0.