cfsearch - использование явного с категориями из запроса
У меня есть поисковая работа, которая объединяет результаты нескольких cfsearch'ов, используя категории. Сбор данных из запроса, представление в базе данных mssql.
Проблема в том, что для поиска требуется несколько файлов cfsearch, каждый из которых требует времени для обработки. Все они также обрабатываются индивидуально, поэтому результаты объединяются не Verity, а объединением QoQ.
Поэтому мой вопрос таков: могу ли я искать несколько категорий, используя AND, OR или NOT, каждая категория содержит определенные слова?
Категории: ФРУКТЫ, ОВОЩИ, МОЛОЧКА Поисковые термины: апельсин, яблоко, сельдерей, йогурт, форд, баскетбол
Что я хочу, чтобы искать критерии, как это:
basketball AND FRUIT<CONTAINS>orange AND VEGETABLES<CONTAINS>celery
Так что мой тег будет:
<cfsearch type="explicit" collection="myCollection" name="mySearch"
criteria="basketball AND FRUIT<CONTAINS>orange AND VEGETABLES<CONTAINS>celery">
Я ищу фрукты для апельсина, овощи для сельдерея и все категории для баскетбола.
Я не могу заставить работать простой явный поиск:
<cfsearch type="explicit" collection="myCollection" name="mySearch"
criteria="FRUIT<CONTAINS>orange">
Но когда я ищу
<cfsearch type="explicit" collection="myCollection" name="mySearch"
criteria="<WORD>orange">
Я получаю результат, категория которого - ФРУКТЫ.
Любая помощь или направление для явного поиска поможет. Я посмотрел на материал Adobe, но я либо что-то пропустил, либо он не объясняет, как это сделать (или, если это невозможно).
Спасибо
1 ответ
Я обнаружил, что Verity не выполняет поиск по категориям при явном поиске.
Мне пришлось преобразовать столбец моей категории в столбец cf_customN, а затем сопоставить его. Я уже использую cf_custom1, поэтому я использовал cf_custom2 для своих категорий.
Мои критерии сейчас строятся так:
(CF_CUSTOM2<MATCHES>fruit AND <ACCRUE>('orange','apple')) OR
(<ACCRUE>('basketball')) OR
(CF_CUSTOM2<MATCHES>vegetables AND <ACCRUE>('celery'))
Причина, по которой я заключаю параметры поиска в кавычки, связана с зарезервированными словами. Если вы ищете какое-либо слово, которое использует Verity (например, "слово"), и не заключаете его в кавычки, поиск прерывается.
Надеюсь, это сэкономит кому-то еще время. Спасибо за прочтение.