Я использую запрос CONTAINSTABLE с механизмом полнотекстового индексирования MS SQL Server для поиска в текстовом столбце; например.:
SELECT *
FROM MyTable
INNER MERGE JOIN CONTAINSTABLE(MyTable, sDescription, 'FORMSOF(INFLECTIONAL, "brains")')
AS TBL1 ON TBL1.[key]=MyTable.ixKey
Он отлично справляется с поиском строк с описанием, включающим такое слово, как «мозг» (например, «мозг», «мозговой»). Однако, когда я показываю эти результаты пользователю, я хотел бы выделить слово, соответствующее их запросу (точно так же, как Google). Но я не могу просто искать поисковый запрос в результатах: если результат содержит «мозг», я, очевидно, не могу выделить «мозги».
Может ли SQL Server сказать мне, где в столбце (слово или символ) встречается полнотекстовое совпадение? Как вариант, могу ли я вручную запустить стеммер, чтобы получить все формы поискового запроса? Тогда я мог бы выделить каждый из них по отдельности.