2017-11-04 5 views
1

docsと他の参考文献を調べたところ、どのような状況でmatch_noneというクエリが役立つのか理解できませんでしたか?どのようなmatch_noneが便利ですか?

おそらく、いくつかのboolクエリでは便利かもしれないと思いますか?それ自体は、奇妙に思える。

参考文献:

答えて

2

、コメントスパムの答えのために申し訳ありませんそれを投稿するには長すぎる:/

私はそれを使用最小値を持つフィルタは、non reを処理するために一致する必要があります文脈に応じて「関連性のない」単語を使用して、自分自身の単語を使用することができます。

例は、次の文アーティストインデックスとアートワークの指標で見ていると、ユーザーに検索の最も適切なレンダリング:

"An artwork blue"

artworkはアーティストで検索するには、関連する単語ではありませんユーザーが "アートワーク"という名前のアーティストを探している場合を除き、インデックス(これは伝記、コメントなどのノイズに似ていますが、意味がありません)。

アーティストインデックスのための私のフィルタは次のように(方法より複雑な方法で)見て:それは動的に構築されています(ダイナミック最小値が一致している必要がありますし)し、いくつかのケースでは、すべてのフィールドを除外することができたよう

{ 
    "query": { 
     "bool": { 
      "should": [{ 
        "query": { 
         "bool": { 
          "should": [{ 
           "match": { 
            "name": "An" 
           } 
          }, { 
           "match": { 
            "biography": "An" 
           } 
          }] 
         }, 
         "minimum_should_match": "100%" 
        } 
       }, 
       { 
        "query": { 
         "bool": { 
          "should": [{ 
           "match": { 
            "name": "artwork" 
           } 
          }, { 
           "match_none": {         
           } 
          }] 
         }, 
         "minimum_should_match": "100%" 
        } 
       }, 
       { 
        "query": { 
         "bool": { 
          "should": [{ 
           "match": { 
            "name": "blue" 
           } 
          }, { 
           "match": { 
            "biography": "blue" 
           } 
          }] 
         }, 
         "minimum_should_match": "100%" 
        } 
       } 
      ], 
      "minimum_should_match": "100%" 
     } 
    } 
} 

が、私はmatch_noneを使って「シンプル」(単語ごとに1つのエントリ)を保ち、明らかにアートワークである検索からアーティストを除外しました。

+0

ニースの例@Julien TASSIN。 '{" match_none ":{}'をスキップすると同じことが達成できますか? – Datageek

関連する問題