弹性搜索查询筛选出通过通配符IDS(elastic search query filter out

2019-10-20 23:43发布

我希望创建一个查询,它会过滤掉包含通配符标识。 举例来说,我想到处寻找的东西,除非该ID包含单词电流。 这可能吗?

Answer 1:

是的,它是可以使用正则表达式过滤器 / 正则表达式查询 。 我想不出办法使用补选项,因此我直接用做bool must_not解决你的问题暂且。 答案后,如果可能的话我会改进。

POST <index name>/_search
{
   "query": {
      "match_all": {}
   },
   "filter": {
      "bool": {
         "must_not": [
            {
               "regexp": {
                  "ID": {
                     "value": ".*current.*"
                  }
               }
            }
         ]
      }
   }
}


文章来源: elastic search query filter out ids by wildcard