sys.indexes (Transact-SQL)
テーブル、ビュー、テーブル値関数など、テーブル オブジェクトのインデックスまたはヒープごとに 1 行のデータを格納します。
適用対象: SQL Server (SQL Server 2008 から現在のバージョンまで)、Windows Azure SQL データベース (初回のリリースから現在のバージョンまで) |
列名 |
データ型 |
説明 |
||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
object_id |
int |
インデックスが属しているオブジェクトの ID。 |
||||||||||||||||
name |
sysname |
インデックスの名前。 name は、オブジェクト内でのみ一意です。 NULL = ヒープ |
||||||||||||||||
index_id |
int |
インデックスの ID。 index_id は、オブジェクト内でのみ一意です。 0 = ヒープ 1 = クラスター化インデックス > 1 = 非クラスター化インデックス |
||||||||||||||||
型 |
tinyint |
インデックスの種類です。
|
||||||||||||||||
type_desc |
nvarchar(60) |
インデックスの種類の説明。
|
||||||||||||||||
is_unique |
bit |
1 = インデックスは一意です。 0 = インデックスは一意ではありません。 クラスター化列ストア インデックスの場合、常に 0 です。 |
||||||||||||||||
data_space_id |
int |
インデックスのデータ領域の ID。 データ領域は、ファイル グループまたはパーティション構成です。 0 = object_id はテーブル値関数またはメモリ内インデックスです。 |
||||||||||||||||
ignore_dup_key |
bit |
1 = IGNORE_DUP_KEY はオンです。 0 = IGNORE_DUP_KEY はオフです。 |
||||||||||||||||
is_primary_key |
bit |
1 = インデックスは PRIMARY KEY 制約の一部です。 クラスター化列ストア インデックスの場合、常に 0 です。 |
||||||||||||||||
is_unique_constraint |
bit |
1 = インデックスは UNIQUE 制約の一部です。 クラスター化列ストア インデックスの場合、常に 0 です。 |
||||||||||||||||
fill_factor |
tinyint |
> 0 = インデックスが作成または再構築された場合に使用される FILLFACTOR のパーセンテージです。 0 = 既定値 クラスター化列ストア インデックスの場合、常に 0 です。 |
||||||||||||||||
is_padded |
bit |
1 = PADINDEX がオンです。 0 = PADINDEX がオフです。 クラスター化列ストア インデックスの場合、常に 0 です。 |
||||||||||||||||
is_disabled |
bit |
1 = インデックスは無効です。 0 = インデックスは無効ではありません。 |
||||||||||||||||
is_hypothetical |
bit |
1 = インデックスは仮想的であり、データへのアクセス パスとして直接使用することはできません。 仮想インデックスは、列レベルの統計を保持しています。 0 = インデックスは仮想的ではありません。 |
||||||||||||||||
allow_row_locks |
bit |
1 = インデックスは行ロックを許可します。 0 = インデックスは行ロックを許可しません。 クラスター化列ストア インデックスの場合、常に 0 です。 |
||||||||||||||||
allow_page_locks |
bit |
1 = インデックスはページ ロックを許可します。 0 = インデックスはページ ロックを許可しません。 クラスター化列ストア インデックスの場合、常に 0 です。 |
||||||||||||||||
has_filter |
bit |
1 = インデックスにフィルターがあり、フィルター定義を満たす行だけが含まれます。 0 = インデックスにフィルターはありません。 |
||||||||||||||||
filter_definition |
nvarchar(max) |
フィルター選択されたインデックスに含まれる行のサブセットの式。 ヒープまたはフィルター選択されたインデックス以外のインデックスの場合は、NULL です。 |
権限
カタログ ビューでのメタデータの表示が、ユーザーが所有しているかそのユーザーが権限を許可されている、セキュリティ保護可能なメタデータに制限されます。 詳細については、「メタデータ表示の構成」を参照してください。
例
次の例は、AdventureWorks2012 データベース内の Production.Product テーブルのすべてのインデックスを返します。
SELECT i.name AS index_name
,i.type_desc
,is_unique
,ds.type_desc AS filegroup_or_partition_scheme
,ds.name AS filegroup_or_partition_scheme_name
,ignore_dup_key
,is_primary_key
,is_unique_constraint
,fill_factor
,is_padded
,is_disabled
,allow_row_locks
,allow_page_locks
FROM sys.indexes AS i
INNER JOIN sys.data_spaces AS ds ON i.data_space_id = ds.data_space_id
WHERE is_hypothetical = 0 AND i.index_id <> 0
AND i.object_id = OBJECT_ID('Production.Product');
GO
関連項目
参照
オブジェクト カタログ ビュー (Transact-SQL)
sys.index_columns (Transact-SQL)
sys.xml_indexes (Transact-SQL)
sys.key_constraints (Transact-SQL)
sys.partition_schemes (Transact-SQL)