Несколько фильтров-запросов с операцией ИЛИ в Solr - PullRequest
10 голосов
/ 01 декабря 2011

Мне нужно определить несколько запросов фильтра в моем запросе, но с операцией ИЛИ.Представьте, что есть fq1, fq2 и fq3.Теперь я хотел бы, чтобы мой последний запрос фильтра был:

fq = fq1 И fq2 ИЛИ fq3

Есть ли способ обработать его в Solr?

Ответы [ 4 ]

7 голосов
/ 22 мая 2014

Похоже, что теперь SOLR (> 4.5) поддерживает запросы такого типа, т.е.

fq = (поле1: значение1 ИЛИ поле2: значение2)

2 голосов
/ 26 июня 2015

Вы можете сделать что-то вроде этого:

fq=fieldA:(valueA OR valueB) OR fieldB:valueC

2 голосов
/ 01 декабря 2011

Это невозможно в Solr. Было бы здорово, если бы вы могли определить свои запросы к фильтру, а затем отдельно указать логическую логику, которая должна применяться между ними.

Несколько лет назад я создал проблему Jira , надеясь, что это будет добавлено.

0 голосов
/ 01 декабря 2011
+fq:fq1 +(fq2:fq2 fq3:fq3) <-- if default query filter type is OR
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...