Udostępnij za pośrednictwem


Znajdowanie kluczowych fraz w dokumentach za pomocą wyszukiwania semantycznego

Dotyczy:programu SQL Server

Opisuje sposób znajdowania kluczowych fraz w dokumentach lub kolumnach tekstowych skonfigurowanych do indeksowania statystycznego.

Znajdowanie kluczowych fraz w dokumentach za pomocą elementu SEMANTICKEYPHRASETABLE

Aby zidentyfikować kluczowe frazy w określonych dokumentach lub zidentyfikować dokumenty zawierające określone frazy kluczowe, wykonaj zapytanie dotyczące funkcji semantickeyphrasetable (Transact-SQL).

Funkcja SEMANTICKEYPHRASETABLE zwraca tabelę z zerem, jednym lub większą liczbą wierszy dla tych kluczowych fraz skojarzonych z kolumnami w określonej tabeli. Do tej funkcji zestawu wierszy można odwoływać się w klauzuli FROM instrukcji SELECT tak, jakby była to zwykła nazwa tabeli.

Notatka

W tej wersji indeksowane są tylko pojedyncze wyrazy na potrzeby wyszukiwania semantycznego; wielowyrazowe frazy (ngramy) nie są indeksowane. Ponadto różne formy tego samego słowa są indeksowane oddzielnie; na przykład "komputer" i "komputery" są indeksowane oddzielnie.

Aby uzyskać szczegółowe informacje o parametrach wymaganych przez funkcję SEMANTICKEYPHRASETABLE oraz o tabeli zwracanych wyników, zobacz semantickeyphrasetable (Transact-SQL).

Ważny

Kolumny, które wybierzesz, muszą mieć włączone pełnotekstowe i semantyczne indeksowanie.

Przykład 1. Znajdowanie najważniejszych fraz kluczowych w określonym dokumencie

Poniższy przykład pobiera 10 kluczowych fraz z dokumentu określonego przez zmienną @DocumentId w kolumnie Document tabeli Production.Document przykładowej bazy danych AdventureWorks. Zmienna @DocumentId reprezentuje wartość z kolumny klucza indeksu pełnotekstowego.

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

Funkcja SEMANTICKEYPHRASETABLE pobiera te wyniki wydajnie przy użyciu funkcji wyszukiwania indeksu zamiast skanowania tabeli.

Przykład 2. Znajdowanie najważniejszych dokumentów zawierających określoną frazę kluczową

Poniższy przykład pobiera 25 najlepszych dokumentów zawierających frazę kluczową "Bracket" z kolumny Document z tabeli Production.Document przykładowej bazy danych 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