Индексация сервисного языка запроса, возвращающая больше предметов, чем ожидалось
-
29-09-2019 - |
Вопрос
Мы используем Язык запроса индексации обслуживания (ака диалект 2) и следующий запрос,
@TaxCategory "\Areas\Technology\" AND @XmlConfigId = 14
Это неожиданно соответствует следующим двум пунктам, а не только первым:
Technology
Technology, Media & Entertainment
Мы ожидали, что окончательная ствол будет ограничивать поиск всего этого предмета; Однако, похоже, хватает что-либо, имеющее данный текст в начале строки.
Как мы пишем запросы, чтобы нацелиться на первые и второе предметы самостоятельно?
Обновлять: Содержание фактически проиндексировано службой индексации, так это:
<ekttaxcategory>#eksep# \Areas\Technology #eksep#</ekttaxcategory>
и
<ekttaxcategory>#eksep# \Areas\Technology, Media & Entertainment#eksep#</ekttaxcategory>
соответственно.
Решение
Потому что подстрока #eksep#
Всегда появляется в конце того, что мы ищем, видели пример индексированных предметов в вопросе, мы оказались решение проблемой, используя этот запрос:
@TaxCategory "\Areas\Technology#eksep#" AND @XmlConfigId = 14
Мы также рассмотрели использование Сопоставление стиля Unix сопоставление в запросе и периода .
как строковый терминатор, но никогда не нужно было попробовать, чтобы после вышеуказанного запроса работал.
Если кто-то еще решает аналогичную проблему, используя другой способ или с сопоставлением шаблона, пожалуйста, опубликуйте еще один ответ с запросом образца. Спасибо.