我在搜索时使用了多个匹配短语。但是我必须单独列出所有数学短语的限制结果。我的意思是,我想每次多场比赛只取2个结果。我无法找到任何限制/尺寸属性。你知道任何解决方案吗?
示例代码:
"query": {
"bool": {
"should": [
{
"match_phrase": {
"text": {
"query": " Home is clear and big ",
"slop": 2
}
}
},
{
"match_phrase": {
"text": {
"query": "365 different company use our system in test",
"slop": 2
}
}
}
]}}
答案 0 :(得分:0)
最简单的解决方案是针对每个条件进行单独搜索。可以将size
参数设置为仅检索每个查询的前2个结果。
https://www.elastic.co/guide/en/elasticsearch/reference/current/search-request-from-size.html
布尔should
查询不会区分满足哪个条件:它返回两个条件中至少有一个成立的文档。两场比赛的得分将合并为一个得分,但无法确定哪个得分
答案 1 :(得分:0)
使用
{"limit" : 3, "from":0, "query": ...}