【发布时间】:2012-11-01 13:25:02
【问题描述】:
我有两个搜索词“86746184549”和“3302093809”。我正在执行两个单独的术语查询来获取一个与每个 ID 匹配的文档。
"size":1,
"query":{
"term":{
"from_user_id": "86746184549"
}
}
和
"size":1,
"query":{
"term":{
"from_user_id": "3302093809"
}
}
有没有办法组合这两个查询,类似于我们在方面所做的事情。
{
"facets":{
"facet_1":{
},
"facet_2":{
},
"facet_3":{
}
}
}
我认为 terms query 不会在这里工作,因为它不会返回包含不同 from_user_id 字段的文档。
我想合并查询的原因是,如果我有 100 个这样的术语,那么我将拨打 100 次电话!!到弹性搜索服务器。
【问题讨论】:
-
我认为术语查询正是您所需要的。为什么你认为它对你不起作用?我不确定我是否理解“distinct from_user_id 字段”的意思。
-
我试着做
{"size":2,"query":{"terms":{"from_user_id": ["86746184549","333621309995644"]}}}, but this gave me 2 results containing the samefrom_user_id`值->“86746184549”。如何获取包含 2 个不同的from_user_id值的 2 条记录。我不想查询整个数据集,这就是我在请求正文中指定size的原因。只想在from_user_id字段中获取两条记录,一条包含“86746184549”,另一条包含“333621309995644”。 `
标签: lucene elasticsearch