Как сделать условие на многозначное поле в solr

Мой SOLR используется для хранения событий.
События могут повторяться.
Мне нужно отфильтровать мой запрос, чтобы получить события в определенном диапазоне дат.

Данные например:
Событие А повторяется в следующие даты 1, 10, 15, 29
Событие B повторяется в следующих датах 2, 11, 14, 19
Событие C повторяется в следующих датах 4 и 25 числа.

Я хочу, чтобы все события происходили между 7-м и 12-м результатом: событие A и событие B
Предположим, что имя поля multivalued=true
Его тип

<fieldType name="tdate" class="solr.TrieDateField" sortMissingLast="true" omitNorms="true" precisionStep="6" positionIncrementGap="0"/>

Как будет выглядеть URL / запрос?

1 ответ

Решение

Я бы сказал, что индекс Lucene на самом деле не является инструментом, который нужно использовать для такого рода задач, но если есть какая-то причина, по которой вы должны его использовать, я бы предложил создать отдельный документ для каждой пары (событие, дата) вместо многозначных полей., Тогда у вас не будет проблем с формулировкой запроса.

Другие вопросы по тегам