Trovare frasi chiave nei documenti tramite la ricerca semantica

Si applica a:SQL Server

Viene descritto come individuare le frasi chiave nei documenti o nelle colonne di testo configurati per l'indicizzazione semantica statistica.

Individua le frasi chiave nei documenti con SEMANTICKEYPHRASETABLE

Per identificare le frasi chiave in documenti specifici o identificare documenti che contengono frasi chiave specifiche, esegui una query sulla funzione semantickeyphrasetable (Transact-SQL).

SEMANTICKEYPHRASETABLE restituisce una tabella con zero, una o più righe per le frasi chiave associate alle colonne nella tabella specificata. A questa funzione per i set di righe è possibile fare riferimento nella clausola FROM di un'istruzione SELECT come se fosse un normale nome di tabella.

Nota

In questa versione solo singole parole vengono indicizzate per la ricerca semantica. Le frasi composte da più parole (n-grammi) non vengono indicizzate. Inoltre, varie forme della stessa parola vengono indicizzate separatamente; ad esempio "calcolo" e "calcoli" vengono indicizzati separatamente.

Per informazioni dettagliate sui parametri necessari per la funzione SEMANTICKEYPHRASETABLE e sulla tabella dei risultati restituita, vedi semantickeyphrasetable (Transact-SQL).

Importante

Per le colonne di destinazione deve essere abilitata l'indicizzazione full-text e semantica.

Esempio 1: trovare le principali frasi chiave in un documento specifico

L'esempio seguente recupera le prime 10 frasi chiave dal documento specificato tramite la variabile @DocumentId nella colonna Document della tabella Production.Document del database di esempio AdventureWorks. La variabile @DocumentId rappresenta un valore della colonna chiave dell'indice full-text.

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

La funzione SEMANTICKEYPHRASETABLE recupera in modo efficiente questi risultati tramite una ricerca nell'indice anziché un'analisi della tabella.

Esempio 2: trovare i documenti principali che contengono una frase chiave specifica

Nell'esempio seguente vengono recuperati i primi 25 documenti che contengono la frase chiave "Bracket" dalla colonna Documento della tabella Production.Document del database di esempio 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