J'utilise une requête CONTAINSTABLE avec le moteur d'indexation de texte intégral de MS SQL Server pour rechercher dans une colonne textuelle; .: par exemple Comment obtenir la position du match dans une recherche de texte intégral FORMSOF INFULATIONAL?
SELECT *
FROM MyTable
INNER MERGE JOIN CONTAINSTABLE(MyTable, sDescription, 'FORMSOF(INFLECTIONAL, "brains")')
AS TBL1 ON TBL1.[key]=MyTable.ixKey
Cela fait un excellent travail de trouver des lignes avec une description comprenant un mot comme « cerveau » (par exemple « cerveau », « brained »). Cependant, lorsque je montre ces résultats à l'utilisateur, je voudrais mettre en évidence le mot qui correspond à leur requête (tout comme Google). Mais je ne peux pas simplement chercher le terme recherché dans les résultats: si le résultat contient "cerveau", je ne peux évidemment pas mettre en évidence "cerveau".
Est-ce que SQL Server peut me dire où se trouve la correspondance de texte intégral dans la colonne (le mot ou le caractère)? Sinon, puis-je lancer manuellement le stemmer pour obtenir toutes les formes du terme de recherche? Je pourrais mettre en évidence chacun d'eux individuellement, alors.