首页 > 解决方案 > 如何用空格查询弹性搜索过滤器中的关键字数组?

问题描述

我有一个这样的城市列表:

["New York","Bayern Munchen","Porto Alegre"] 

我想在必须或应该部分搜索一些查询并在过滤部分使用这个城市关键字,但是这个城市有空格并且弹性搜索没有响应。

{  
   "query":{  
      "bool":{  
         "should":[  
            {  
               "match_phrase":{  
                  "title":"pizza"
               }
            },
            {  
               "match_phrase":{  
                  "content":"foods"
               }
            }
         ],
         "filter":[  
            {  
               "range":{  
                  "date":{  
                     "gte":"2015-01-01"
                  }
               }
            },
            {  
               "terms":{  
                  "cities":[  
                     "New York",
                     "Bayern Munchen",
                     "Porto Alegre"
                  ]
               }
            }
         ],
         "minimum_should_match":1
      }
   }
}

此代码在过滤器中使用“术语”,但结果为空。如何在过滤器部分使用此关键字?

标签: c#elasticsearch

解决方案


推荐阅读