3

こんな問い合わせがあります

   s = Search(using=es, index=indices)
   s = s.filter('range', 
                utctimestamp={'gte': begindateUTC, 'lte': enddateUTC})
         .filter("term",tags="foo").
         .sort("-utctimestamp")

私の質問は、どうすればフィルターを無効にできますか? つまり、foo ではありません。上記はフィルターを使用する「必須」です。

  "filter": {
    "bool": {
      "must": [
        {
          "range": {
            "utctimestamp": {
              "from": 1460407864660,
              "to": 1460409664660
            }
          }
        },
        {
          "fquery": {
            "query": {
              "query_string": {
                "query": "_type:(\"foo\")"
              }
            },
            "_cache": true
          }
        }
      ]

「foo」ビットを「must not」にする方法を教えてください。

前もって感謝します

4

1 に答える 1

4

must_not句でフィルターを使用する必要があります。

句はmust_notスコアに影響しません。それらの唯一の目的は、そうでなければ含まれていた可能性のあるドキュメントを除外することです。

于 2016-04-12T08:00:20.110 に答える