Rechercher des documents similaires ou connexes avec la recherche sémantique

S’applique à :SQL Server

Explique comment rechercher des valeurs textuelles ou des documents similaires ou connexes et donne des informations sur leur similitude, dans des colonnes configurées pour l'indexation sémantique statistique.

Rechercher des documents similaires ou connexes avec SEMANTICSIMILARITYTABLE

Pour identifier des documents similaires ou connexes dans une colonne spécifique, interrogez la sémantique de la fonction (Transact-SQL) .

SEMANTICSIMILARITYTABLE retourne une table de zéro, une ou plusieurs lignes pour les colonnes dont le contenu dans la colonne spécifiée est sémantiquement similaire au document spécifié. Cette fonction d'ensemble de lignes peut être référencée dans la clause FROM d'une instruction SELECT comme un nom de table classique.

Vous ne pouvez pas rechercher des documents similaires dans plusieurs colonnes. La fonction SEMANTICSIMILARITYTABLE récupère uniquement des résultats provenant de la même colonne que la colonne source, qui est identifiée par l’argument source_key .

Pour obtenir des informations détaillées sur les paramètres requis par la fonction SEMANTICSIMILARITYTABLE et sur la table des résultats qu’il retourne, voir semanticsimilaritytable (Transact-SQL) .

Important

L'indexation sémantique et de texte intégral doit être activée pour les colonnes que vous ciblez.

Exemple : Rechercher les principaux documents similaires à un autre document

L’exemple suivant récupère les 10 premiers candidats similaires au candidat spécifié par @CandidateID à partir de la table HumanResources.JobCandidate dans l’exemple AdventureWorks2022 de base de données.

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;  
GO  

Rechercher des informations sur la manière dont des documents sont similaires ou connexes avec SEMANTICSIMILARITYDETAILSTABLE

Pour obtenir des informations sur les expressions clés qui rendent des documents similaires ou connexes, vous pouvez interroger la sémantique de fonction semanticsimilaritydetailstable (Transact-SQL).

SEMANTICSIMILARITYDETAILSTABLE retourne une table de zéro, une ou plusieurs lignes d’expressions clés communes dans deux documents (un document source et un document mis en correspondance) dont le contenu est similaire sémantiquement. Cette fonction d'ensemble de lignes peut être référencée dans la clause FROM d'une instruction SELECT comme un nom de table classique.

Pour plus d’informations sur les paramètres requis par la fonction SEMANTICSIMILARITYDETAILSTABLE et sur la table des résultats qu’il retourne, consultez semanticsimilaritydetailstable (Transact-SQL).

Important

L'indexation sémantique et de texte intégral doit être activée pour les colonnes que vous ciblez.

Exemple : Rechercher les expressions clés supérieures similaires entre les documents

L’exemple suivant récupère les 5 expressions clés qui ont le score de similarité le plus élevé entre les candidats spécifiés dans la table HumanResources.JobCandidate de l’exemple AdventureWorks2022 de base de données.

SELECT TOP(5) KEY_TBL.keyphrase, KEY_TBL.score  
FROM SEMANTICSIMILARITYDETAILSTABLE  
    (  
    HumanResources.JobCandidate,  
    Resume, @CandidateID,  
    Resume, @MatchedID  
    ) AS KEY_TBL  
ORDER BY KEY_TBL.score DESC;  
GO