Freigeben über


Suchen von Schlüsselausdrücken in Dokumenten mit der semantischen Suche

Beschreibt, wie Schlüsselausdrücke in Dokumenten oder Textspalten gesucht werden, die für die statistische semantische Indizierung konfiguriert sind.

In diesem Thema

Ich möchte…

  • Suchen von Schlüsselausdrücken in Dokumenten

    • Vorgehensweise: Suchen der Schlüsselausdrücke in Dokumenten mit SEMANTICKEYPHRASETABLE

    • Beispiel: Suchen der wichtigsten Schlüsselausdrücke in einem bestimmten Dokument

    • Beispiel: Suchen der wichtigsten Dokumente, die einen bestimmten Schlüsselausdruck enthalten

Suchen von Schlüsselausdrücken in Dokumenten

Vorgehensweise: Suchen der Schlüsselausdrücke in Dokumenten mit SEMANTICKEYPHRASETABLE

Um die Schlüsselausdrücke in bestimmten Dokumenten bzw. Dokumente zu identifizieren, die bestimmte Schlüsselausdrücke enthalten, fragen Sie die Funktion semantickeyphrasetable (Transact-SQL) ab.

SEMANTICKEYPHRASETABLE gibt eine Tabelle mit keiner, einer oder mehreren Zeilen für die Schlüsselausdrücke zurück, die in der angegebenen Tabelle Spalten zugeordnet sind. Auf diese Rowsetfunktion kann in der FROM-Klausel einer SELECT-Anweisung so verwiesen werden, als handelte es sich dabei um einen regulären Tabellennamen.

HinweisHinweis

In SQL Server 2012 werden nur einzelne Wörter für die semantische Suche in den Index aufgenommen. Multiwort-Ausdrücke (ngrams) werden nicht indiziert. Auch werden verschiedene Formen des gleichen Wortes getrennt indiziert. Beispielsweise werden "Agent" und "Agents" getrennt indiziert.

Ausführliche Informationen zu den für die SEMANTICKEYPHRASETABLE-Funktion erforderlichen Parametern und zu der zurückgegebenen Ergebnistabelle finden Sie unter semantickeyphrasetable (Transact-SQL).

Wichtiger HinweisWichtig

Für die Spalten, auf die Sie abzielen, muss die Volltext- und die semantische Indizierung aktiviert sein.

[NACH OBEN]

Beispiel 1: Suchen der wichtigsten Schlüsselausdrücke in einem bestimmten Dokument

Im folgenden Beispiel werden die obersten 10 Schlüsselausdrücke aus dem von der @DocumentId-Variable in der Spalte "Dokument" der Production.Document-Tabelle der AdventureWorks-Beispieldatenbank angegebenen Dokument abgerufen. Die @DocumentId-Variable stellt einen Wert aus der Schlüsselspalte des Volltextindexes dar.

SELECT TOP(10) KEYP_TBL.keyphrase
FROM SEMANTICKEYPHRASETABLE
    (
    Production.Document,
    Document,
    @DocumentId
    ) AS KEYP_TBL
ORDER BY KEYP_TBL.score DESC;
GO

Die SEMANTICKEYPHRASETABLE-Funktion ruft diese Ergebnisse effizient mithilfe eines Indexsuchvorgangs anstelle eines Tabellenscans ab.

[NACH OBEN]

Beispiel 2: Suchen der wichtigsten Dokumente, die einen bestimmten Schlüsselausdruck enthalten

Im folgenden Beispiel werden die obersten 25 Dokumente mit dem Schlüsselausdruck "Klammer" in der Spalte "Dokument" der Production.Document-Tabelle der AdventureWorks-Beispieldatenbank abgerufen.

SELECT TOP (25) DOC_TBL.DocumentID, DOC_TBL.DocumentSummary
FROM Production.Document AS DOC_TBL
    INNER JOIN SEMANTICKEYPHRASETABLE
    (
    Production.Document,
    Document
    ) AS KEYP_TBL
ON DOC_TBL.DocumentID = KEYP_TBL.document_key
WHERE KEYP_TBL.keyphrase = 'Bracket'
ORDER BY KEYP_TBL.Score DESC;
GO

[NACH OBEN]