Elasticsearchフィルタ

セクション


_score(スコア)フィールドは、検索条件指標とドキュメントを一致度の尺度です。スコアが高いほど、より多くの関連文書、低いスコア、より多くの無関係な文書。スコアを生成、またはスコアの不要な計算を避けるために、自動的に決定Elasticsearchを必要とすることは必ずしも必要ではありません。

ブールクエリもサポートするfilterフィルタ条件を設定するための句を。フィルタリングは、文書の関連性スコアには影響を与えません。

ブールクエリを使用して、次の例では、20000から30000の間のすべての口座残高を返します。

API

GET /bank/_search
{
  "query": {
    "bool": {
      "must": { "match_all": {} },
      "filter": {
        "range": {
          "balance": {
            "gte": 20000,
            "lte": 30000
          }
        }
      }
    }
  }
}

カール

curl -X GET "localhost:9200/bank/_search" -H 'Content-Type: application/json' -d'
{
  "query": {
    "bool": {
      "must": { "match_all": {} },
      "filter": {
        "range": {
          "balance": {
            "gte": 20000,
            "lte": 30000
          }
        }
      }
    }
  }
}
'

上記ブールクエリが含まれていmatch_allたクエリ(問合せ部)とrangeクエリ(フィルタ部)。フィルタ条件rangeクエリは、ドキュメントの関連性スコアが計算される影響はありません。

またmatch_allmatchboolおよびrangeクエリは、他の多くのクエリの種類があり、ずっと同じ作品、関連する情報を参照してください。

おすすめ

転載: www.cnblogs.com/jinbuqi/p/11504392.html