適用対象:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Microsoft Fabric の SQL データベース
フルテキスト インデックスでは、 フル テキスト インデックス フラグメントと呼ばれる内部テーブルを使用して 逆インデックス データを格納します。 このビューを使用すると、これらのフラグメントに関するメタデータをクエリできます。 このビューは、フルテキスト インデックスが含まれているすべてのテーブルのフルテキスト インデックス フラグメントごとに 1 行のデータを格納しています。
| 列名 | データ型 | 説明 |
|---|---|---|
table_id |
int | フルテキスト インデックス フラグメントが含まれているテーブルのオブジェクト ID。 |
fragment_id |
int | フルテキスト インデックス フラグメントの論理 ID。 テーブルのすべてのフラグメントで一意です。 |
fragment_object_id |
int | フラグメントに関連付けられている内部テーブルのオブジェクト ID。 |
timestamp |
binary(8) | フラグメントの作成に関連付けられているタイムスタンプ。 より新しいフラグメントのタイムスタンプは、古いフラグメントのタイムスタンプよりも大きくなります。 |
status |
int | フラグメントの状態。次のいずれかです。0 = 新たに作成され、まだ使用されていない1 = 全文索引の集団またはマージ時に挿入に使用される場合4 = 閉店。 クエリの準備完了6 = マージ入力に使用されクエリ準備完了8 = 削除指定。 クエリやマージソースには使われていません。4または6の状態は、その断片が論理全文索引の一部であり、クエリが可能であることを意味します。 つまり、 クエリ可能な フラグメントです。 |
data_size |
bigint | フラグメントの論理サイズ (バイト単位)。 |
row_count |
bigint | フラグメント内の個々の行の数。 |
解説
sys.fulltext_index_fragmentsカタログビューは、全文索引を構成する断片の数を照会するために使用できます。 全文クエリの性能が遅い場合は、 sys.fulltext_index_fragments を使って全文インデックス内のクエリ可能な断片数(status は 4 または 6)を次のように照会できます。
SELECT table_id,
status
FROM sys.fulltext_index_fragments
WHERE status = 4
OR status = 6;
クエリ可能なフラグメントが多数存在する場合は、フルテキスト インデックスを含むフルテキスト カタログを再構成して、フラグメントを結合することをお勧めします。 全文カタログを再編成するにはALTER FULLTEXT CATALOGcatalog_nameREORGANIZEをご利用ください。 たとえば、ftCatalog データベースの AdventureWorks2025 という名前のフルテキスト カタログを再構成するには、次のように入力します。
USE AdventureWorks2025;
GO
ALTER FULLTEXT CATALOG ftCatalog REORGANIZE;
GO
アクセス許可
カタログ ビューでのメタデータの可視性は、ユーザーが所有しているか、ユーザーに何らかのアクセス許可が付与されているセキュリティ保護可能なリソースに限定されます。