Delen via


Sleuteltermen zoeken in documenten met Semantisch zoeken

van toepassing op:SQL Server-

Hierin wordt beschreven hoe u de sleuteltermen vindt in documenten of tekstkolommen die zijn geconfigureerd voor statistische semantische indexering.

De sleuteltermen zoeken in documenten met SEMANTICKEYPHRASETABLE

Als u de sleuteltermen in specifieke documenten wilt identificeren of documenten wilt identificeren die specifieke sleuteltermen bevatten, voert u een query uit op de functie semantickeyphrasetable (Transact-SQL).

SEMANTICKEYPHRASETABLE retourneert een tabel met nul, een of meer rijen voor die sleuteltermen die zijn gekoppeld aan kolommen in de opgegeven tabel. Naar deze rijsetfunctie kan worden verwezen in de FROM-component van een SELECT-instructie alsof deze een gewone tabelnaam is.

Notitie

In deze release worden slechts enkele woorden geïndexeerd voor semantische zoekopdrachten; woordgroepen (ngrammen) worden niet geïndexeerd. Bovendien worden verschillende vormen van hetzelfde woord afzonderlijk geïndexeerd; 'computer' en 'computers' worden bijvoorbeeld afzonderlijk geïndexeerd.

Zie semantickeyphrasetabel (Transact-SQL)voor gedetailleerde informatie over de parameters die zijn vereist voor de functie SEMANTICKEYPHRASETABLE en over de tabel met resultaten die worden geretourneerd.

Belangrijk

De kolommen waarop u zich richt, moeten zowel volledige tekst- als semantische indexering ingeschakeld hebben.

Voorbeeld 1: De belangrijkste sleuteltermen zoeken in een specifiek document

In het volgende voorbeeld worden de tien belangrijkste sleuteltermen opgehaald uit het document dat is opgegeven door de variabele @DocumentId in de kolom Document van de tabel Production.Document van de voorbeelddatabase AdventureWorks. De @DocumentId-variabele vertegenwoordigt een waarde uit de sleutelkolom van de volledige tekstindex.

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

De functie SEMANTICKEYPHRASETABLE haalt deze resultaten efficiënt op met behulp van een indexzoekfunctie in plaats van een tabelscan.

Voorbeeld 2: De belangrijkste documenten zoeken die een specifieke sleutelterm bevatten

In het volgende voorbeeld worden de bovenste 25 documenten opgehaald die de sleutelterm 'Haakje' bevatten uit de kolom Document van de tabel Production.Document van de voorbeelddatabase AdventureWorks.

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