sys.dm_fts_index_keywords (Transact-SQL)

指定されたテーブルのフルテキスト インデックスのコンテンツに関する情報を返します。

sys.dm_fts_index_keywords は動的管理関数です。

注意

下位レベルのフルテキスト インデックス情報を表示するには、ドキュメント レベルで sys.dm_fts_index_keywords_by_document 動的管理関数を使用します。

構文

sys.dm_fts_index_keywords( DB_ID('database_name'), OBJECT_ID('table_name'))

引数

  • db_id('database_name')
    DB_ID() 関数の呼び出しです。この関数は、データベース名を受け取り、データベース ID を返します。sys.dm_fts_index_keywords はこの ID を使用して指定されたデータベースを検索します。database_name の指定を省略すると、現在のデータベース ID が返されます。

  • object_id('table_name')
    OBJECT_ID() 関数の呼び出しです。この関数はテーブル名を受け取り、調べるフルテキスト インデックスが含まれているテーブルのテーブル ID を返します。

返されるテーブル

列名

データ型

説明

keyword

nvarchar(4000)

フルテキスト インデックスに格納されているキーワードの 16 進数表記です。

注意
0xFF は、ファイルまたはデータセットの終わりを示す特殊文字を表します。

display_term

nvarchar(4000)

人間が判読できる形式のキーワードです。この形式は、16 進数形式から派生します。

注意
OxFF の display_term 値は "END OF FILE" です。

column_id

int

現在のキーワードのフルテキスト インデックスが作成された列の ID です。

document_count

int

現在の用語を含むドキュメントまたは行の数です。

説明

sys.dm_fts_index_keywords から返される情報は、特に次の項目を確認するのに役立ちます。

  • キーワードがフルテキスト インデックスの一部であるかどうか。

  • 特定のキーワードを含むドキュメントまたは行の数。

  • フルテキスト インデックスで最も一般的なキーワード。

    • 各 keyword_value の document_count は、総 document_count (0xFF のドキュメント数) と比較されます。

    • 通常、一般的なキーワードは、ストップ ワードとして宣言するのに適している可能性が高いと考えられます。

注意

特定のドキュメントについて sys.dm_fts_index_keywords から返される document_count は、sys.dm_fts_index_keywords_by_document または CONTAINS クエリから返されるカウントより精度が低い場合があります。このように正確さが失われる可能性は、1% 未満であると推定されます。この状況は、document_id がインデックス フラグメント内で複数の行にわたって続いている場合や、同じ行内に複数回出現する場合に、2 回カウントされることがあるために生じます。特定のドキュメントについて正確なカウントを得るには、sys.dm_fts_index_keywords_by_document または CONTAINS クエリを使用します。

権限

CREATE FULL TEXT CATALOG 権限と、フルテキスト インデックスに含まれる列に対する SELECT 権限が必要です。

A. 上位レベルのフルテキスト インデックス コンテンツを表示する

次の例では、AdventureWorks2008R2 サンプル データベースの HumanResources.JobCandidate テーブルで、フルテキスト インデックスの上位レベルのコンテンツに関する情報を表示します。.

SELECT * FROM sys.dm_fts_index_keywords(db_id('AdventureWorks2008R2'), object_id('HumanResources.JobCandidate'))
GO