索引结构:
{
"documents": [
{
"doc_type": [
"dataset"
],
"title": [
"document_title"
],
"id": [
1234
],
"_childDocuments_": [
{
"parent_id": [
1234
],
"doc_type": [
"column"
],
"id": [
789
],
"attr_nm": [
"child_field_value"
],
},
]
}
]
}
每当执行搜索/查询时,我总是要返回父文档。例如。如果我搜索“ child_field_value”,我想获取父文档广告,则用户永远不会看到子文档。
我可以为父母工作。例如。如果我搜索“ document_title”,则可以使用以下设置获取上面的结构:
q=document_title
fl=*,[child parentFilter=doc_type:dataset]
qf=title^200 attr_nm
如果我使用查询关键字“ child_field_value”尝试此操作,则会得到一个奇怪的结构,如:
"response": {
"numFound":2,
"start":0,
"docs":[
{
"parent_id":"1234",
"doc_type":"column",
"id":"123",
"attr_nm":"child_field_value",
},
{
"parent_id":"1234",
"doc_type":"column",
"id":"456",
"attr_nm":"child_field_value",
"_childDocuments_":[{
"parent_id":"1234",
"doc_type":"column",
"id":"124",
"attr_nm":"child_field_value",
}]
}
]
}
即使在子字段中搜索任何值,如何确保始终能获得所需的结果?