【发布时间】:2018-08-28 03:42:03
【问题描述】:
我需要搜索一个包含 3 个关键字(3 个查询)的数据库,并且我需要告诉用户哪个关键字(查询)给出了结果。 我一直在研究命名查询作为一种可能的解决方案。
我想知道是否可以将命名查询应用于嵌套查询?
根据文档:
搜索响应将包含每个匹配的匹配查询 匹配上。
所以我尝试了一个简单的查询来查看它是如何工作的,我得到了一个结果,但没有“matched_queries”。我是不是做错了什么?
这是我在 Kibana 中的查询:(我没有使用真实姓名)
GET database/document/_search
{
"query": {
"nested": {
"path": "first_path",
"query": {
"nested" : {
"path" : "second_path",
"query" : {
"match": {
"match_field": {
"query": "First query",
"_name" : "query"
}
}
}
}
},
"inner_hits": {}
}
}
}
【问题讨论】:
-
您是否设法解决了问题?我认为您在
match_field中缺少“名称”查询。所以match_field=>name=> [query,_name]。看看这里:qbox.io/blog/elasticsearch-named-queries
标签: json elasticsearch nosql kibana