2013-11-20 60 views
1

請告訴我正確的方向:)彈性:搜索與不必要的詞

我有一個任務:找到通過查詢彈性的搜索,這可能含有不必要的詞的文檔。

我會告訴我的意思:

假設我有一些文件包含單詞「大紅色的車」(現在他們在指數不同領域),我想找到這個文件與像一個疑問:「暗紅色」或「非常大紅色 muscule 」,甚至「在大汽車有beatiful 顏色「。 但是,我同時要保存機會,「紅旗轎車」或「大汽車

的不確定不必要單詞列表來查找,我不能添加他們停止字。

謝謝你在前進(:。

回答

0

Elasticsearch有bool query type您可以添加定義與它的查詢我不會給你一個確切的代碼,因爲它看起來像一個家庭作業或賦值如果您我們提供你做了什麼至今,然後我可以添加一個工作代碼

但這裏是僞代碼:。

carQuery = fieldName with fieldValue 'car' 
bigQuery = fieldName with fieldValue 'big' 
redQuery = fieldName with fieldValue 'red' 

boolQuery.must(carQuery).should(bigQuery).mustnot(redQuery) 

我希望這將是有益的

+0

是的,我如果我把所有字段放到其他字段的**文本**中,那麼JSON的請求將會是這樣的: { 「query」:{ 「bool」:{ 「should」: [「term」:{「text」:{「term」:「red」}}},{ { 「term」:{「text」:{「term」:「car」}}} ] } } } –