Applies to:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analytics Platform System (PDW)
Microsoft Fabric の SQL 分析エンドポイント
Microsoft Fabric のウェアハウス
SQL Server のデータベース内のテーブル、インデックス、インデックス付きビューに対して存在する統計オブジェクトごとに 1 行のデータを格納します。 すべてのインデックスには、同じ名前と ID (index_id = stats_id) の対応する統計行がありますが、すべての統計行に対応するインデックスがあるわけではありません。
カタログ ビューの sys.stats_columns は、データベース内の各列の統計情報を提供します。
統計の詳細については、「統計」を参照してください。
注意
Microsoft Fabric の統計情報の詳細については、「 Fabric Data Warehouse の統計」を参照してください。
| 列名 | データ型 | 説明 |
|---|---|---|
object_id |
int | これらの統計情報が属しているオブジェクトの ID。 |
name |
sysname | 統計情報の名前。 オブジェクト内で一意です。 |
stats_id |
int | 統計情報の ID。 オブジェクト内で一意です。 統計情報がインデックスに対応する場合、stats_id の値は、sys.indexes カタログ ビューの index_id の値と同じです。 |
auto_created |
bit | 統計情報が SQL Server によって自動的に作成されたかどうかを示します。 0 = SQL Server によって統計が自動的に作成されませんでした。 1 = 統計情報は SQL Server によって自動的に作成されました。 |
user_created |
bit | 統計情報がユーザーによって作成されたかどうかを示します。 0 = 統計はユーザーによって作成されませんでした。 1 = 統計はユーザーによって作成されました。 |
no_recompute |
bit | 統計が NORECOMPUTE オプションを使用して作成されたかどうかを示します。0 = NORECOMPUTE オプションを使用して統計が作成されませんでした。1 = NORECOMPUTE オプションを使用して統計が作成されました。 |
has_filter |
bit | 0 = 統計にはフィルターがなく、すべての行で計算されます。 1 = 統計にフィルターがあり、フィルター定義を満たす行についてのみ計算されます。 |
filter_definition |
nvarchar(max) | フィルター処理された統計情報に含まれる行のサブセットの式。NULL = フィルター処理されていない統計。 |
is_temporary |
bit | 統計情報が一時的かどうかを示します。 一時的な統計情報では、読み取り専用アクセスが有効になっている Always On 可用性グループのセカンダリ データベースがサポートされます。 0 = 統計は一時的ではありません。 1 = 統計情報は一時的なものです。 適用対象: SQL Server |
is_incremental |
bit | 統計情報が増分統計として作成されるかどうかを示します。 0 = 統計は増分ではありません。 1 = 統計情報は増分です。 適用対象: SQL Server 2014 (12.x) 以降のバージョン。 |
has_persisted_sample |
bit |
PERSIST_SAMPLE_PERCENT オプションを使用して統計が作成または更新されたかどうかを示します。0 = 統計がサンプルの割合を保持していません。1 = 統計は、 PERSIST_SAMPLE_PERCENT オプションを使用して作成または更新されました。: SQL Server 2019 (15.x) 以降のバージョンに適用されます。 |
stats_generation_method |
int | 統計情報が作成される方法を示します。0 = 並べ替えベースの統計1 = 内部使用のみ : SQL Server 2019 (15.x) 以降のバージョンに適用されます。 |
stats_generation_method_desc |
varchar(255) | 統計情報が作成される方法についてのテキストによる説明。 並べ替えベースの統計情報 内部でのみ使用されます : SQL Server 2019 (15.x) 以降のバージョンに適用されます。 |
auto_drop |
bit | この統計オブジェクトに対して自動削除機能が有効かどうかを示します。
AUTO_DROP プロパティを使用すると、以降のスキーマ変更が統計オブジェクトによってブロックされず、代わりに統計が必要に応じて削除されるように、モードで統計オブジェクトを作成できます。 このように、 AUTO_DROP が有効になっている手動で作成された統計は、自動作成された統計と同様に動作します。 詳細については、「AUTO_DROP オプション」を参照してください。適用対象: SQL Server 2022 (16.x) 以降のバージョン、Azure SQL Database、Azure SQL Managed Instance。 |
replica_role_id |
tinyint | 自動統計が最後に更新されたレプリカを示します。 1 = プライマリ 2 = セカンダリ 3 = Geo セカンダリ 4 = Geo HA セカンダリ 適用対象: SQL Server 2025 (17.x) プレビュー以降のバージョン、Azure SQL Database、Azure SQL Managed Instance。 |
replica_role_desc |
nvarchar(60) | プライマリ、セカンダリ、Geo セカンダリ、Geo HA セカンダリ 適用対象: SQL Server 2025 (17.x) プレビュー以降のバージョン、Azure SQL Database、Azure SQL Managed Instance。 |
replica_name |
sysname | 可用性グループ内のレプリカのインスタンス名。
NULL プライマリ レプリカの場合適用対象: SQL Server 2025 (17.x) プレビュー以降のバージョン、Azure SQL Database、Azure SQL Managed Instance |
アクセス許可
カタログ ビューでのメタデータの可視性は、ユーザーが所有しているか、ユーザーに何らかのアクセス許可が付与されているセキュリティ保護可能なリソースに限定されます。 詳細については、「 メタデータの可視性の構成」を参照してください。
例
次の例では、HumanResources.Employee テーブルのすべての統計情報および統計情報列を返します。
USE AdventureWorks2022;
GO
SELECT s.name AS statistics_name,
c.name AS column_name,
sc.stats_column_id
FROM sys.stats AS s
INNER JOIN sys.stats_columns AS sc
ON s.object_id = sc.object_id
AND s.stats_id = sc.stats_id
INNER JOIN sys.columns AS c
ON sc.object_id = c.object_id
AND c.column_id = sc.column_id
WHERE s.object_id = OBJECT_ID('HumanResources.Employee');