Share via


sp_helpstats (Transact-SQL)

適用対象:SQL ServerAzure SQL DatabaseAzure SQL Managed Instance

指定したテーブルの列およびインデックスに関する統計を返します。

重要

この機能は、 SQL Serverの将来のバージョンで削除される予定です。 新規の開発作業ではこの機能を使用しないようにし、現在この機能を使用しているアプリケーションは修正することを検討してください。 統計に関する情報を取得するには、sys.statsカタログ ビュー sys.stats_columnsクエリを実行します。

Transact-SQL 構文表記規則

構文

sp_helpstats
    [ @objname = ] N'objname'
    [ , [ @results = ] N'results' ]
[ ; ]

引数

[ @objname = ] N'objname'

統計情報を提供するテーブルを指定します。 @objnameは nvarchar(776)で、既定値はありません。 1 部構成または 2 部構成の名前を指定できます。

[ @results = ] N'results'

提供する情報の範囲を指定します。 @resultsは nvarchar(5) で、既定値は STATS.

  • ALL には、すべてのインデックスの統計と、そのインデックスに統計が作成された列が一覧表示されます。
  • STATS には、インデックスに関連付けられていない統計のみが一覧表示されます。

リターン コードの値

0 (成功) または 1 (失敗)。

結果セット

次の表では、結果セットの列について説明します。

列名 説明
statistics_name 統計の名前。 sysname返し、指定することはできませんNULL
statistics_keys 統計の基になっているキー。 nvarchar(2078) を返し、できませんNULL

解説

特定のインデックスまたは統計に関する詳細な統計情報を表示するために使用 DBCC SHOW_STATISTICS します。 詳細については、DBCC SHOW_STATISTICSとsp_helpindexを参照してください

アクセス許可

ロール public のメンバーシップが必要です。

次の例では、sp_createstats を実行し、AdventureWorks2022 データベース内のすべてのユーザー テーブルを対象にして、条件を満たすすべての列に関する統計を 1 列ずつ作成します。 次に、 sp_helpstats テーブルに作成された結果の統計を検索するために実行されます Customer

USE AdventureWorks2022;
GO

EXEC sp_createstats;
GO

EXEC sp_helpstats
    @objname = 'Sales.Customer',
    @results = 'ALL';

結果セットは次のようになります。

statistics_name               statistics_keys
---------------------------- ----------------
_WA_Sys_00000003_22AA2996     AccountNumber
AK_Customer_AccountNumber     AccountNumber
AK_Customer_rowguid           rowguid
CustomerType                  CustomerType
IX_Customer_TerritoryID       TerritoryID
ModifiedDate                  ModifiedDate
PK_Customer_CustomerID        CustomerID