Teilen über


semanticsimilaritytable (Transact-SQL)

Gilt für: SQL Server

Gibt eine Tabelle mit keiner, einer oder mehreren Zeilen für Dokumente zurück, deren Inhalt in den angegebenen Spalten einem angegebenen Dokument semantisch ähnlich ist.

Auf diese Rowsetfunktion kann in der FROM-Klausel einer SELECT-Anweisung wie auf einen regulären Tabellennamen verwiesen werden.

Transact-SQL-Syntaxkonventionen

Syntax

SEMANTICSIMILARITYTABLE  
    (  
    table,  
    { column | (column_list) | * },  
    source_key  
    )  

Argumente

Tabelle
Ist der Name einer Tabelle, für die die Volltext- und die semantische Indizierung aktiviert ist.

Dieser Name kann einteilig sein oder aus bis zu vier Teilen bestehen, aber ein Remoteservername ist nicht zugelassen.

column
Name der indizierten Spalte, für die Ergebnisse zurückgegeben werden sollen. Für die Spalte muss die semantische Indizierung aktiviert sein.

column_list
Gibt mehrere durch Trennzeichen getrennte Spalten an, die in Klammern eingeschlossen sind. Für alle Spalten muss die semantische Indizierung aktiviert sein.

*
Gibt an, dass alle Spalten eingeschlossen werden, für die die semantische Indizierung aktiviert ist.

source_key
Eindeutiger Schlüssel für die Zeile, um Ergebnisse für eine bestimmte Zeile anzufordern.

Der Schlüssel wird implizit in den Typ des eindeutigen Volltextschlüssels in der Quelltabelle konvertiert, wenn möglich. Der Schlüssel kann als Konstante oder Variable angegeben werden. Er kann jedoch kein Ausdruck oder das Ergebnis einer skalaren Unterabfrage sein.

Zurückgegebene Tabelle

Die folgende Tabelle enthält Informationen zu ähnlichen oder verwandten Dokumenten, die diese Rowsetfunktion zurückgibt.

Passende Dokumente werden auf der Basis einzelner Spalten zurückgegeben, wenn Ergebnisse aus mehr als einer Spalte angefordert werden.

Column_name Typ Beschreibung
source_column_id int ID der Spalte, aus der ein Quelldokument zum Suchen von ähnlichen Dokumenten verwendet wurde.

Im Abschnitt über die COL_NAME-Funktion und COLUMNPROPERTY-Funktion finden Sie ausführliche Informationen zum Abrufen des Spaltennamens aus "column_id" und umgekehrt.
matched_column_id int ID der Spalte, in der ein ähnliches Dokument gefunden wurde.

Im Abschnitt über die COL_NAME-Funktion und COLUMNPROPERTY-Funktion finden Sie ausführliche Informationen zum Abrufen des Spaltennamens aus "column_id" und umgekehrt.
matched_document_key *

Dieser Schlüssel stimmt mit dem Typ des eindeutigen Schlüssels in der Quelltabelle überein.
Eindeutiger Schlüsselwert für die Volltext- und semantische Extraktion des Dokuments oder der Zeile, das bzw. die Ähnlichkeit mit dem angegebenen Dokument in der Abfrage aufweist.
score REAL Ein relativer Ähnlichkeitswert für dieses Dokument bezogen auf alle anderen ähnlichen Dokumente.

Der Wert ist eine Dezimalzahl im Bereich [0,0; 1,0], wobei ein höheres Ergebnis eine höhere Übereinstimmung und 1,0 ein perfektes Ergebnis darstellt.

Allgemeine Hinweise

Weitere Informationen finden Sie unter "Ähnliche und verwandte Dokumente mit semantischer Suche".

Einschränkungen

Ähnliche Dokumente können nicht über Spalten hinweg abgefragt werden. Die FUNKTION SEMANTIKIMILARITYTABLE ruft nur ähnliche Dokumente aus derselben Spalte wie die Quellspalte ab, die durch das Argument source_key identifiziert wird.

Metadaten

Führen Sie eine Abfrage der folgenden dynamischen Verwaltungssichten durch, um Informationen, einschließlich Statusinformationen, zur semantischen Ähnlichkeitsextraktion und Auffüllung zu erhalten:

Sicherheit

Berechtigungen

Erfordert SELECT-Berechtigungen für die Basistabelle, für die der Volltextindex und der semantische Index erstellt wurden.

Beispiele

Im folgenden Beispiel werden die top 10 Kandidaten abgerufen, die einem angegebenen Kandidaten aus der Tabelle "HumanResources.JobCandidate" in der AdventureWorks2022 Beispieldatenbank ähneln.

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;