将部分查询字符串与elaticsearch索引

时间:2016-06-29 06:30:32

标签: elasticsearch elasticsearch-2.0

我需要搜索添加到elasticsearch中的索引的小文本长度的文档,并且只有当搜索查询完全匹配我的任何文档文本时才想获取搜索结果。 例如。 让这些文件添加到索引中。

1。){     名称:" alpha beta" }

2。){     名称:" gamma delta" }

如果查询字符串是 -

1.) "alpha beats beta"

2.) "alpha beats gammma"

比第一个查询应返回第一个文档,因为文档的所有标记都按原样匹配。但是第二个查询不应该返回任何文档,因为不存在这样的文档,其所有标记都存在于查询字符串中。

注意:只有在文档中存档的文本的所有标记都出现在查询字符串中时,才应返回结果。

1 个答案:

答案 0 :(得分:0)

您可以按空格标记术语并编写查询,如下所示。

{
"query": {
 "bool": {
      "should" : [          

           {"match_phrase" : { "name": "alpha"}},
           {"match_phrase" : { "name": "beta"}}
      ],
"minimum_should_match" : 2
 }
},
size:50
}

这里“minimum_should_match”:n是键,其中n是术语数。

相关问题