sys.dm_fts_index_keywords (Transact-SQL)
適用於:SQL Server
針對指定的資料表傳回全文檢索索引之內容的相關資訊。
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() 函式的呼叫。 此函式會接受資料庫名稱,並傳回資料庫標識碼, sys.dm_fts_index_keywords 用來尋找指定的資料庫。 如果 省略database_name ,則會傳回目前的資料庫標識符。
object_id('table_name')
呼叫 OBJECT_ID() 函式。 此函式會接受數據表名稱,並傳回包含要檢查之全文檢索索引之數據表的數據表標識符。
傳回的資料表
資料行名稱 | 資料類型 | 描述 |
---|---|---|
keyword | nvarchar(4000) | 儲存在全文檢索索引內的關鍵詞十六進位表示法。 注意:OxFF 代表表示檔案或數據集結尾的特殊字元。 |
display_term | nvarchar(4000) | 關鍵詞的人類可讀取格式。 此格式衍生自十六進位格式。 注意: OxFF 的 display_term值為 “END OF FILE”。 |
column_id | int | 目前關鍵詞已編製全文檢索索引之數據行的標識碼。 |
document_count | int | 包含目前字詞的檔或數據列數目。 |
備註
sys.dm_fts_index_keywords傳回的信息有助於找出下列各項,以及其他事項:
關鍵詞是否為全文檢索索引的一部分。
有多少檔或數據列包含指定的關鍵詞。
全文檢索索引中最常見的關鍵詞:
與總document_count相比,每個keyword_value document_count的檔計數0xFF。
一般而言,常見的關鍵詞可能適合宣告為停用字詞。
注意
sys.dm_fts_index_keywords所傳回的document_count可能比sys.dm_fts_index_keywords_by_document或 CONTAINS 查詢所傳回的計數更精確。 此潛在不透明度估計小於 1%。 這可能是因為document_id在索引片段中的一個以上的數據列之間繼續,或在同一個數據列中出現一次以上時,可能會計算document_id兩次。 若要取得特定檔更精確的計數,請使用 sys.dm_fts_index_keywords_by_document 或 CONTAINS 查詢。
權限
需要 系統管理員 (sysadmin) 固定伺服器角色中的成員資格。
範例
A. 顯示高階全文檢索索引內容
下列範例會顯示數據表中 HumanResources.JobCandidate
全文檢索索引之高階內容的相關信息。
SELECT * FROM sys.dm_fts_index_keywords(db_id('AdventureWorks2022'), object_id('HumanResources.JobCandidate'))
GO
另請參閱
全文搜索和語意搜尋動態管理檢視和函式 (Transact-SQL)
全文檢索搜尋
sys.dm_fts_index_keywords_by_document (Transact-SQL)