弹性:用不必要的单词搜索

时间:2013-11-20 14:50:04

标签: elasticsearch query-analyzer

请告诉我正确的方向:)

我有一项任务:通过查询弹性搜索查找文档,其中可能包含不必要的单词。

我会表明我的意思:

假设我有一些包含“大红色汽车”字样的文档(现在它们在索引的不同字段中),我希望找到这样的文档,例如:“红色汽车“或”非常红色 muscule 汽车“甚至” 大车具有美丽的红色颜色“。 但是,同时我希望通过“红车”或“大车”来节省机会

未定义的单词列表未定义,我无法将它们添加到停用词。

提前谢谢(:

1 个答案:

答案 0 :(得分: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)

我希望它会有用。