sys.column_store_segments (Transact-SQL)
列ストア インデックスに各列の行を格納します。
列名 |
データ型 |
説明 |
---|---|---|
partition_id |
bigint |
パーティション ID を示します。 データベース内で一意です。 |
hobt_id |
bigint |
この列ストア インデックスを保持するテーブルのヒープまたは B ツリー インデックス (hobt) の ID。 |
column_id |
int |
列ストアの列の ID。 |
segment_id |
int |
列セグメントの ID。 |
version |
int |
列セグメント形式のバージョン。 |
encoding_type |
int |
そのセグメントに使用されるエンコーディングの種類。 |
row_count |
int |
行グループ内の行の数。 |
has_nulls |
int |
列セグメントに NULL 値がある場合は 1。 |
base_id |
bigint |
エンコードの種類 1 が使用されている場合はベース値 ID。エンコードの種類 1 が使用されていない場合、base_id は 1 に設定されます。 |
大きさ |
float |
エンコードの種類 1 が使用されている場合は大きさ。エンコードの種類 1 が使用されていない場合、magnitude は 1 に設定されます。 |
primary__dictionary_id |
int |
プライマリ辞書の ID。 |
secondary_dictionary_id |
int |
セカンダリ辞書の ID。 セカンダリ辞書が定義されていない場合は、-1 を返します。 |
min_data_id |
bigint |
列セグメントの最小データ ID。 |
max_data_id |
bigint |
列セグメントの最大データ ID。 |
null_value |
bigint |
NULL を表すために使用される値。 |
on_disk_size |
bigint |
セグメントのサイズ (バイト単位)。 |
解説
次のクエリは、列ストア インデックスのセグメントに関する情報を返します。
SELECT i.name, p.object_id, p.index_id, i.type_desc,
COUNT(*) AS number_of_segments
FROM sys.column_store_segments AS s
INNER JOIN sys.partitions AS p
ON s.hobt_id = p.hobt_id
INNER JOIN sys.indexes AS i
ON p.object_id = i.object_id
WHERE i.type = 6
GROUP BY i.name, p.object_id, p.index_id, i.type_desc ;
GO
権限
すべての列で、少なくともテーブルに対する VIEW DEFINITION 権限が必要です。 ユーザーが SELECT 権限も持っていない場合、has_nulls、base_id、magnitude、min_data_id、max_data_id、および null_value の各列は Null を返します。
カタログ ビューでのメタデータの表示が、ユーザーが所有しているかそのユーザーが権限を許可されている、セキュリティ保護可能なメタデータに制限されます。詳細については、「メタデータ表示の構成」を参照してください。
関連項目
参照
オブジェクト カタログ ビュー (Transact-SQL)
sys.all_columns (Transact-SQL)
sys.computed_columns (Transact-SQL)
sys.column_store_dictionaries (Transact-SQL)