Q:有两个人掉到陷阱里了,死的人叫死人,活人叫什么?

ES如何实现 (id=1 or id=2) and (name=1 or name=2)

Elasticsearch | 作者 hanjiang | 发布于2016年08月26日 | 阅读数:4607

Elasticsearch should可以对一个字段实现or查询,但是如何实现如题的多个字段的or查询,希望大牛们多多赐教!!
已邀请:

yqcute

赞同来自: leighton_buaa

查询语句如下:
{
  "query": {
    "filtered": {
      "filter": {
        "bool": {
          "must": [  //实现 and的效果
            {
              "terms": {
                "id": [  //实现单字段的or
                  80615,
                  82282
                ]
              }
            },
            {
              "terms": {
                "name": [//实现单字段的or
                  50515146,
                  50515096,
                  50529814
                ]
              }
            }
          ]
        }
      }
    }
  }
}

medcl - 今晚打老虎。

赞同来自:

你说的多字段是指多字段对应一个条件么,如果是,用mutl-match和querystring都可以,传fields传的是一个数组

要回复问题请先登录注册