Вложенные документы SOLR отфильтрованы нормально, но не отсортированы по релевантности
У меня есть этот запрос:
+ parent_field: blabla + query: {! parent which = type: parent} + child_field: xxx ~ 1
и в FL
parent_field, [child parentFilter = тип:parent childFilter=child_field:xxx~1]
Работает нормально, это означает, что:
Он фильтрует родителей, которые имеют parent_field=blabla и имеют по крайней мере одного ребенка, который имеет child_field = xxx
И он возвращает из parent: parent_field вместе со списком детей, список детей которого фильтруется следующим образом: child_field = xxx, что хорошо, но УКАЗАТЕЛЬ релевантности списка детей не учитывается, он всегда в одном и том же порядке. Порядок родителей действительно в порядке.
Пример:
Это то, что он возвращает
{
parent_field: "blabla",
children: [
{
child_field: "xxxx"
},{
child_field: "xxx"
}
]
}
Это то, что я хочу вернуть!
{
parent_field: "blabla",
children: [
{
child_field: "xxx"
},{
child_field: "xxxx"
}
]
}
1 ответ
Я узнал. Я просто использовал подзапросы!
q = (type_s: parent И поле parent_field:blabla)&fl=*,children:[подзапрос]&children.q=({! условия f=fk_id_parent v=$row.id_parent} И дочернее поле:xxx~1)