我在elasticsearch中有下面的类型文档。我想在查询结果与特定记录匹配时进行查询,然后根据其权重自动设置。
{
"_id": 652,
"name":"jason rock",
"emails": [
{
"email_id": "angel@gmail.com",
"em_id": "1228"
},
{
"email_id": "rock@gmail.com",
"em_id": "1228"
}
],
"org": [
{
"org_job_title": "Manager",
"org_name": "OYO Rooms",
"org_id":2
},
{
"org_job_title": "QA Lead",
"org_name": "prime technology",
"org_id":1
}
],
"address": [
{
"add_id": "15067770698711",
"formatted_address": "TUCSON AZ"
},
{
"add_id": "15078034145004",
"formatted_address": "DRAGRAM SUITE"
}
]
}
我希望查询任何与名称匹配的内容,然后在emails.email_id之后显示在顶部,然后在org.org_name,org.org_job_title之后,然后address.formatted_address应匹配。
如果找不到匹配的名称,则根据上述优先级将显示。例如,如果记录与name和email.email_id不匹配但与org.org_name匹配,则该记录应位于结果之上。
如果两者都有记录,则_id:102的名称和_id的org.org_name:101然后_id:102将出现在顶部。