弹性搜索哪里有不断等级的子句?怎么做?

时间:2015-11-30 05:59:50

标签: elasticsearch

我是弹性搜索的新手。如何生成弹性搜索等效查询 从pnrno='sampleid'

的响应中选择*

我知道我们必须在弹性搜索中使用'过滤'选项。但我们不需要任何排名。 (排名可以是常数)所以如何生成查询来实现这个

2 个答案:

答案 0 :(得分:0)

你是对的,你可以使用带有查询子句的过滤查询为空和过滤器。过滤一组文件就是过滤查询作用的集合,以便进一步过滤/匹配并计算相关性。过滤器就像bool匹配或拒绝(1/0)。

{
    "query": {
        "filtered": {
            "filter": {
                "bool": {
                    "must": [{
                        "term": {
                            "FIELD": "VALUE"
                        }
                    }]
                }
            }
        }
    }
}

答案 1 :(得分:0)

实现此目的的通常方法是使用嵌入式constant_score queryterm filter,如下所示:

{
  "query": {
    "constant_score": {
      "filter": {
        "term": {
          "pnrno": "sampleid"
        }
      }
    }
  }
}