2014-03-12 128 views
0

進行確切的詞匹配任何分析儀是否有執行的彈性搜索是否有彈性搜索

例子,如果我有像「美國」,「美國」和「美的」的話確切的詞匹配任何分析儀,如果我搜索「美國」,我應該只得到第一個..用標準分析儀,它給出了所有三個。

我想確保這隻在查詢時間。我不想對現有索引進行更改。請幫幫我。

回答

0

設置映射到not_analyzed

curl -XPOST localhost:9200/test -d '{ 
    "mappings" : { 
     "type1" : { 
      "properties" : { 
       "field1" : { "type" : "string", "index" : "not_analyzed" } 
      } 
     } 
    } 
}' 

這不會做任何你輸入的字符串,但仍然允許它進行搜索。請注意,如果您這樣做,搜索「美國」將不匹配「美國」,因爲大小寫有所不同。

如果你想能夠匹配那些,那麼你應該嘗試keyword分析儀。

curl -XPOST localhost:9200/test -d '{ 
     "mappings" : { 
      "type1" : { 
       "properties" : { 
        "field1" : { "type" : "string", "analyzer" : "keyword" } 
       } 
      } 
     } 
    }' 
0

你不必擔心儀。而查詢使用期限和條件查詢時會表現爲你問..