是否可以对bool过滤器中的特定字段使用多项条件?
query": {
"filtered": {
"filter": {
"bool": {
"must": [
{
"terms": {
"events": [
"abc",
"def",
"ghi",
"jkl"
]
},
"terms" : {
"users" : [
"user_1",
"user_2",
"user_3"
]
}
}
]
}
}
}
}
第一个术语过滤器工作正常,但我无法使用第二个术语,如果我对上述查询做错了,请更正。
答案 0 :(得分:4)
你几乎就在那里,你忘记了一个支架。这是正确的查询:
{
"query": {
"filtered": {
"filter": {
"bool": {
"must": [
{
"terms": {
"events": [
"abc",
"def",
"ghi",
"jkl"
]
}
},
{
"terms": {
"users": [
"user_1",
"user_2",
"user_3"
]
}
}
]
}
}
}
}
}
这将评估两个条件:
基本上,每个术语查询/过滤器都需要包含在其中。自己的牙套,他们需要兄弟姐妹。