如何在ElasticSearch中合并多个查询
供参考的是代码。我正在尝试制作一个记录到elasticsearch的hubot插件,然后使用hubot命令搜索那些日志。
https://gist.github.com/4050748
我正在尝试检索与两个查询匹配的记录。
{ query: {
match: {
user: "SomeUsername"
},
range: {
date: {
from: (Date.now() - 3600)
}
}
},
size: 50
}
我期待:
- 多达50条记录
- 具有给定用户的记录
- 最近一小时的记录
我有:
- 最多10条记录
- 具有给定用户的记录
- 从任何时候
我如何在过去一小时内获取带有某些用户名的所有记录?我需要将match_all与过滤器一起使用吗?我尝试的是不受支持的吗?
在SQL中,它将类似于:
Select (*) from messages where user_name = ? and time > ?
回答:
您需要使用布尔查询将不同的查询组合在一起。然后,您可以选择每个查询是否必须匹配,应匹配(可选)或不匹配。
以上是 如何在ElasticSearch中合并多个查询 的全部内容, 来源链接: utcz.com/qa/430446.html