2015-03-25 117 views
2

我使用elastic4s客戶對我的斯卡拉彈性的搜索,並試圖在多個字段進行搜索 類似:elastic4s - 搜索多領域

"query": { "match": { "_all": { "query": "SomeTermToMatch", "operator": "and" } } }

我已經試過:

query { '_all', query(searchString)).operator(MatchQueryBuilder.Operator.AND) }

但它沒有像本機es那樣返回想要的結果。

有人知道我該如何達到目的?

回答

1

你養成這樣的查詢爲:

search in "index"/"type" query { 
    matchQuery("_all", "search string").operator(MatchQueryBuilder.Operator.AND) 
} 

您可以在此展示的工作源elastic4s看到unit test

+0

非常感謝!也是偉大的客戶。 (雖然,如果有更多的文檔,它可能會非常有幫助) – 2015-03-26 06:40:31

+0

順便說一句,有沒有辦法得到響應(命中數組)作爲JSON,或者我必須解析? – 2015-03-26 06:49:29

+0

我現在做的事情很歪曲: 'net.liftweb.json.Serialization.write(res.getHits.getHits.map(f => JSON.parseFull(f.sourceAsString)' – 2015-03-26 07:29:33