Язык запросов службы индексирования возвращает больше элементов, чем ожидалось - PullRequest
0 голосов
/ 01 декабря 2010

Мы используем Язык запросов службы индексирования (он же Диалект 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>

соответственно.

1 Ответ

0 голосов
/ 02 декабря 2010

Поскольку подстрока #eksep# всегда появляется в конце того, что мы ищем, как видно на примере проиндексированных элементов в вопросе, мы решили проблему с помощью этого запроса:

@TaxCategory  "\Areas\Technology#eksep#" AND @XmlConfigId = 14

Мы также рассмотрели возможность использования сопоставления с шаблоном стиля UNIX в запросе и периода . в качестве ограничителя строки, но не нужно было пытаться сделать это после того, как сработал вышеуказанный запрос.

Если кто-то еще решает подобную проблему другим способом или с помощью сопоставления с шаблоном, пожалуйста, опубликуйте другой ответ с примером запроса. Благодаря.

...