Синтаксис запроса фасетирования Solr

StackOverflow https://stackoverflow.com/questions/839854

  •  22-07-2019
  •  | 
  •  

Вопрос

я хочу отфильтровать количество фасетов в многозначном поле (без документации)

Например:

select?q=*:*&rows=5&facet=true&facet.limit=5&facet.field=productID&facet.sort=true

есть ли возможность отфильтровать счетчики в моем facet.field productId ?

Учитывая предыдущий запрос, я получаю следующее:

<lst name="facet_counts">
<lst name="facet_queries"/>
−
<lst name="facet_fields">
−
<lst name="productID">
**<int name="EG7SpTw03mJ25vxS5jcB24">603</int>**
<int name="E53OBaX5hjGDAKzbHHaDG1">573</int>
<int name="sSLMrsA0wjLF8iWRAbzNq4">415</int>
<int name="ijcfPOTpg3eeGoXSW8h8L5">336</int>
<int name="Lij0a3kVgQzLxtOMgOXb06">296</int>
</lst>
</lst>
<lst name="facet_dates"/>
</lst>

Я просто хочу отфильтровать запрос, чтобы получить такие результаты:

− − 603 573 415 336 296

 <lst name="facet_counts">
    <lst name="facet_queries"/>
    −
    <lst name="facet_fields">
    −
    <lst name="productID">
    <int name="E53OBaX5hjGDAKzbHHaDG1">573</int>
    <int name="sSLMrsA0wjLF8iWRAbzNq4">415</int>
    <int name="ijcfPOTpg3eeGoXSW8h8L5">336</int>
    <int name="Lij0a3kVgQzLxtOMgOXb06">296</int>
    <int name="Lij0a3kVgQzLxtOMYERESW">293</int>
    </lst>
    </lst>
    <lst name="facet_dates"/>
    </lst>

Просто хочу отфильтровать по идентификатору продукта: EG7SpTw03mJ25vxS5jcB24...

СПАСИБО

Это было полезно?

Решение

Что ж, я нашел решение, просто используйте параметр facet.prefix.

выбрать?q=:&rows=5&facet=true&facet.limit=5&facet.field=productID&facet.sort=true&facet.prefix=EG7SpTw03mJ25vxS5jcB24

Результат, который я получаю:

<lst name="facet_counts">
<lst name="facet_queries"/>
−
<lst name="facet_fields">
−
<lst name="taxonUUID">
<int name="EG7SpTw03mJ25vxS5jcB24">603</int>
</lst>
</lst>
<lst name="facet_dates"/>
</lst>

Я собираюсь задать новый, более сложный вопрос по этой теме...

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top