sys.stats (Transact-SQL)
針對 SQL Server 資料庫中資料表、索引和索引檢視表的每個統計資料物件,各包含一個資料列。 每一個索引都有一個相同名稱和識別碼 (index_id = stats_id) 的對應統計資料列,不過並非每一個統計資料列都有對應的索引。
目錄檢視 sys.stats_columns 為資料庫中的每個資料行提供統計資料資訊。 如需有關統計資料的詳細資訊,請參閱<統計資料>。
適用於:SQL Server (SQL Server 2008 透過目前版本)、Windows Azure SQL 資料庫 (初始版本,透過目前版本)。 |
資料行名稱 |
資料類型 |
描述 |
|
---|---|---|---|
object_id |
int |
這些統計資料所屬物件的識別碼。 |
|
name |
sysname |
統計資料的名稱。 在物件中,這是唯一的。 |
|
stats_id |
int |
統計資料的識別碼。 在物件中,這是唯一的。 |
|
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 |
指出統計資料是否為暫時性。 暫時性統計資料支援已啟用唯讀存取的 AlwaysOn 可用性群組 次要資料庫。 0 = 統計資料不是暫時性。 1 = 統計資料是暫時性。
|
|
is_incremental |
bit |
指出是否將統計資料建立成累加統計資料。 0 = 統計資料不是累加的。 1 = 統計資料是累加的。
|
權限
目錄檢視內中繼資料的可見性會限制在使用者所擁有的安全性實體,或已授與使用者某些權限的安全性實體。 如需詳細資訊,請參閱<中繼資料可見性組態>。
範例
下列範例會傳回 HumanResources.Employee 資料表的所有統計資料及統計資料行。
USE AdventureWorks2012;
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');