SQL Server でインデックスを確認する方法
SQL Serverでインデックスを確認するには、以下の方法があります。
- システムビュー 사용: 시스템 뷰를 사용하면 데이터베이스에 있는 인덱스 정보를 조회할 수 있습니다. 일반적으로 사용되는 시스템 뷰로는 sys.indexes, sys.index_columns, sys.tables 등이 있습니다.
例えば、次のようなクエリは、データベース内のすべてのテーブルの索引情報を表示します。
SELECT
t.name AS TableName,
i.name AS IndexName,
c.name AS ColumnName
FROM
sys.indexes AS i
INNER JOIN
sys.index_columns AS ic ON i.object_id = ic.object_id AND i.index_id = ic.index_id
INNER JOIN
sys.columns AS c ON ic.object_id = c.object_id AND ic.column_id = c.column_id
INNER JOIN
sys.tables AS t ON i.object_id = t.object_id
WHERE
t.is_ms_shipped = 0
ORDER BY
t.name, i.name, ic.key_ordinal;
- SSMSを使って確認できる:SSMSはSQL Serverの公式の管理ツールで、グラフィックインターフェースのインデックス情報を表示することが可能です。
SSMS でインデックスを確認したいテーブルを選択し、右クリックして「デザイン」を選択します。デザインビューでは、テーブルのインデックスを確認できます。
- DBCCコマンドの使用: DBCCコマンドは、SQL Serverでデータベースの整合性確認やその他操作に使用されるコマンドの集合です。DBCC SHOWCONTIGコマンドを使用して、インデックスの断片化程度と統計情報を表示できます。
例如,下面的命令将显示指定表的所有索引的碎片化程度:
DBCC SHOWCONTIG ('TableName');
SQL Server内のインデックスを確認するための代表的な方法をいくつか説明しました。必要に応じて、適切な方法を選択してインデックス情報を取得してください。