2012-10-17 125 views
0

我準備了查詢對象並在elasticsearch中進行搜索。在elasticsearch中搜索

對於製作查詢對象,我給出了key和它們的值。

問題是,當鍵和值如「品牌」:「男裝」那麼在這種情況下elasticsearch是無法給我相關的文檔。我認爲問題是用逗號或可能是空格。一切都很好,如果我使用其他json屬性的鍵和值(沒有空間和逗號,如「優先級」:「高」)

請任何幫助!

更新:

不匹配查詢仍然不工作!我在創建搜索查詢時發現了另外一個問題。我正在使用的查詢是:

var qryObj1 = { 
         "query" : { 
         "text" : {"name":"Tom"} 
        } 
       };  

這將返回所有名稱爲Tom的文檔。現在我想獲得所有名稱爲湯姆的文檔,職業是開發人員。所以,這裏修改一個:

qryObj1 = { 
        "query" : { 
         "text" : {"name":"Tom","profession":"developer"} 
        },"operator" : "and" 

       };  

但是搜索結果是舊的。任何幫助!

+0

我猜你需要提供你的映射,如果你已經提交了一個,以及你用來從elasticsearch檢索數據的查詢。 – javanna

回答

0

聽起來像你正在使用TermQuery,不是嗎?

未分析TermQuery,因此它們與您的分析內容不匹配。

試用MatchQuery。它應該工作。

+0

還沒有工作! –

+0

所以,正如@javanna之前寫的,你應該發佈更多的細節(映射,doc發送,查詢) – dadoonet