elasticsearch must和should组合查询

我要查询的组合条件是b=82 || (b=0 && a = 0) || (b=0 && a=100) ,es5.0这个must和should的Java代码怎么写?

阅读 33.7k
4 个回答

must 和 should 联合查询的时候区分清楚即可

{"query": {
   "bool": {
     "should": [
       {"bool": {
         "must": [
           {}
         ]
       }
       },
       {"bool": {
         "must": [
           {}
         ]
       }}
     ]
   }
  }
}

多层bool嵌套应该可以。

bool语句可以继续嵌套在should和must中,should下有多个条件时注意加参数 minimum_should_match

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏