適用対象:SQL Server
指定した列の内容が指定したドキュメントと意味的に似ているドキュメントの 0 行、1 行、または複数行のテーブルを返します。
この行セット関数は、通常のテーブル名のようなSELECT
ステートメントのFROM
句で参照できます。
Syntax
SEMANTICSIMILARITYTABLE
(
table
, { column | (column_list) | * }
, source_key
)
Arguments
テーブル
フルテキスト インデックス作成とセマンティック インデックス作成が有効になっているテーブルの名前。
この名前は 1 から 4 部構成の名前にすることができますが、リモート サーバー名は使用できません。
column
結果を返すインデックス付き列の名前。 列でセマンティック インデックス作成が有効になっている必要があります。
column_list
複数の列をコンマで区切り、かっこで囲んで示します。 すべての列でセマンティック インデックス作成が有効になっている必要があります。
*
セマンティック インデックスが有効になっているすべての列が含まれていることを示します。
source_key
特定の行の結果を要求する行の一意のキー。
キーは、可能な限り、ソース テーブルのフルテキスト一意キーの型に暗黙的に変換されます。 キーは定数または変数として指定できますが、スカラー サブクエリの式または結果にすることはできません。
Table returned
次の表は、この行セット関数が返す類似ドキュメントまたは関連ドキュメントに関する情報を示しています。
一致したドキュメントは、複数の列から結果が要求された場合、列ごとに返されます。
Column name | タイプ | Description |
---|---|---|
source_column_id
1 |
int | ソース ドキュメントを使用して類似したドキュメントを検出したときの、検出元の列の ID。 |
matched_column_id
1 |
int | 類似のドキュメントが見つかった列の ID。 |
matched_document_key |
* このキーは、ソース テーブル内の一意キーの型と一致します。 |
クエリで指定したドキュメントに類似していることが判明したドキュメントまたは行の、フルテキストおよびセマンティックな抽出の一意のキー値。 |
score |
real | 類似した他のすべてのドキュメントとの関係における、このドキュメントの類似性の相対値。 この値は、[0.0, 1.0] の範囲内の小数部の 10 進値であり、高いスコアは近い一致を表し、1.0 は完全なスコアです。 |
1column_id
から列名を取得する方法の詳細については、COL_NAME関数と COLUMNPROPERTY 関数を参照してください。
Remarks
詳細については、「 セマンティック検索を使用した類似ドキュメントおよび関連ドキュメントの検索を参照してください。
Limitations
類似ドキュメントの列間でクエリを実行することはできません。
SEMANTICSIMILARITYTABLE
関数は、source_key引数で識別されるソース列と同じ列から同様のドキュメントのみを取得します。
Metadata
セマンティック類似性の抽出と作成に関する情報と状態については、次の動的管理ビューを照会します。
Permissions
フルテキスト インデックスとセマンティック インデックスが作成されたベース テーブルに対する SELECT
アクセス許可が必要です。
Examples
次の例では、AdventureWorks2022
サンプル データベースのHumanResources.JobCandidate
テーブルから、指定した候補に似た上位 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;