sys.dm_fts_index_keywords (Transact-SQL)
針對指定的資料表傳回全文檢索索引之內容的相關資訊。
sys.dm_fts_index_keywords 是動態管理函數。
注意
若要檢視較低層級的全文檢索索引資訊,請在文件層級使用 sys.dm_fts_index_keywords_by_document 動態管理函數。
適用於:SQL Server (SQL Server 2008 至目前版本)。 |
語法
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 在索引片段中延伸超過一個資料列,或在同一個資料列中出現超過一次而重複計算了兩次所致。如果要針對特定文件取得正確性較高的計數,請使用 sys.dm_fts_index_keywords_by_document 或 CONTAINS 查詢。
權限
需要 sysadmin 固定伺服器角色的成員資格。
範例
A.顯示概略的全文檢索索引內容
下列範例會在 HumanResources.JobCandidate 資料表中顯示全文檢索索引之高層級內容的相關資訊。
SELECT * FROM sys.dm_fts_index_keywords(db_id('AdventureWorks2012'), object_id('HumanResources.JobCandidate'))
GO
請參閱
參考
全文檢索搜尋與語意搜尋動態管理檢視和函數 (Transact-SQL)
sys.dm_fts_index_keywords_by_document (Transact-SQL)