Полный текстовый указатель. Пунктуация, вызывающая проблемы при поиске по таблице - PullRequest
0 голосов
/ 21 октября 2019

Мне нужно просмотреть множество зарегистрированных SQL-операторов на наличие имен таблиц.

Я пытаюсь использовать полнотекстовый индекс SQL для ускорения процесса.

Но не все имена таблиц индексируются, когда я заполняю свой индекс.

OneПримером является 'sys.dm_xe_session_targets'

SELECT display_term  
FROM sys.dm_fts_parser  
('"sys.dm_xe_session_targets "',1033 , null, 0)

, который возвращает:

sys.dm
sys
dm
_xe_session_targets

Фактическое имя таблицы, 'dm_xe_session_targets', отсутствует.

Похоже на пунктуациювызывает проблемы. Поскольку имя таблицы индексируется, как и ожидалось, когда я опускаю 'sys.'

В качестве примечания ... Я вижу то же самое, когда я фактически создаю индекс и заполняю его, а затем использую sys.dm_fts_index_keywords для проверки индекса.

Есть ли объяснение этому поведению?

Или ... еще лучше

Обходной путь?

...