適用於:SQL Server
針對在指定數據行中的內容類似指定之檔,傳回零、一或多個數據列的數據表。
此數據列集函式可以在語句的 FROM 子句中SELECT參考,例如一般數據表名稱。
Syntax
SEMANTICSIMILARITYTABLE
(
table
, { column | (column_list) | * }
, source_key
)
Arguments
表格
已啟用全文檢索和語意索引的數據表名稱。
此名稱可以是一到四個部分名稱,但不允許遠端伺服器名稱。
column
應該傳回結果的索引數據行名稱。 數據行必須啟用語意索引。
column_list
表示數個數據行,以逗號分隔,並以括弧括住。 所有數據行都必須啟用語意索引。
*
表示包含啟用語意索引的所有數據行。
source_key
數據列的唯一索引鍵,以要求特定數據列的結果。
金鑰會盡可能隱含地轉換成源數據表中全文檢索唯一索引鍵的類型。 索引鍵可以指定為常數或變數,但不能是純量子查詢的運算式或結果。
傳回的資料表
下表描述此數據列集函式傳回之類似或相關文件的相關信息。
如果從多個數據行要求結果,則會根據每個數據行傳回相符的檔。
| 欄位名稱 | 類型 | Description |
|---|---|---|
source_column_id
1 |
int | 源文檔用來尋找類似檔之數據行的標識碼。 |
matched_column_id
1 |
int | 找到類似檔之數據行的識別碼。 |
matched_document_key |
*此索引鍵會比對源數據表中唯一索引鍵的類型。 |
找到的檔或數據列的全文檢索和語意擷取唯一索引鍵值,與查詢中的指定檔類似。 |
score |
real | 此檔與所有其他類似檔關聯性中相似性的相對值。 此值是 [0.0, 1.0] 範圍內的小數十進位值,其中較高的分數代表更接近的相符專案,而 1.0 是完美的分數。 |
1 如需如何從 中擷取數據行名稱的詳細資訊,請參閱 COL_NAME 和 column_id 函式。
Remarks
如需詳細資訊,請參閱 使用語意搜尋尋找類似和相關文件。
Limitations
您無法跨資料行查詢類似的檔案。 函 SEMANTICSIMILARITYTABLE 式只會從與源數據行相同的數據行擷取類似的檔,而源數據行是由 source_key 自變數所識別。
Metadata
如需語意相似度擷取和母體的相關信息和狀態,請查詢下列動態管理檢視:
Permissions
SELECT需要建立全文檢索和語意索引之基表的許可權。
Examples
下列範例會從 HumanResources.JobCandidate 範例資料庫中的數據表 AdventureWorks2025 擷取與指定候選項目類似的前 10 名候選專案。
SELECT TOP (10) KEY_TBL.matched_document_key AS Candidate_ID
FROM SEMANTICSIMILARITYTABLE (HumanResources.JobCandidate, Resume, @CandidateID) AS KEY_TBL
ORDER BY KEY_TBL.score DESC;