2

ユーザーの検索語(apple iphone 5s)であいまい検索を実行したい。1 番目 (リンゴ) のスコア値を高くし、2 番目のスコア値を少し低くしたいと考えています。

以下のクエリから始めましたが、期待どおりに機能しませんでした。

{
  "query": {
    "fuzzy_like_this_field": {
      "name": {
        "like_text": "appla^4 iphane^2 5^1",
        "max_query_terms": 12
      }
    }
  },
  "fields": "name",
  "sort": {
    "_score": {
      "order": "desc"
    }
  }
}

このクエリの書き方がわかりますか??

4

1 に答える 1

1

私は答えを見つけました。

{ 
   "query" : { 
      "bool" : { 
         "should" : [ 
            { 
               "fuzzy" : { 
                  "name" : { 
                     "min_similarity" : 0.5, 
                     "boost" : 4, 
                     "value" : "appla", 
                     "prefix_length" : 0 
                  } 
               } 
            }, 
            { 
               "fuzzy" : { 
                  "name" : { 
                     "min_similarity" : 0.1, 
                     "boost" : 2, 
                     "value" : "iphane", 
                     "prefix_length" : 1 
                  } 
               } 
            } , 
            { 
               "fuzzy" : { 
                  "name" : { 
                     "min_similarity" : 0.1, 
                     "boost" : 1, 
                     "value" : "5", 
                     "prefix_length" : 1 
                  } 
               } 
            }
         ] 
      } 
   } 
} 
于 2014-10-24T14:42:00.210 に答える