Elasticsearch - 搜索不在

Elasticsearch - Search NOT IN

我有很多文档几乎都是这样定义的:

{
   "id": 1,
   "createdBy": 1379662
   "content": "foo"
}
{
   "id": 2,
   "createdBy": 549674
   "content": "bar"
}

我正在尝试获取 createdBy 不在列表中的所有文档:

{
  "post_filter":{
     "bool":{
        "must_not":[
           {
              "term":{
                 "createdBy":[
                    1379662,
                    18475
                 ]
              }
           }
        ]
     }
  },
  "query":{
     "match_all":{

     }
  }
}

但是我仍然得到了 1379662 创建的文档。 如果我在我的数组中只使用一个值,它是有效的

"term":{
    "createdBy":[1379662]
}

我们在此项目上使用的是旧版本的 ES (1.7.5)。但是有解决办法吗?

感谢您的帮助

布菲

使用terms代替term

{
  "post_filter":{
     "bool":{
        "must_not":[
           {
              "terms":{               <--- change this
                 "createdBy":[
                    1379662,
                    18475
                 ]
              }
           }
        ]
     }
  },
  "query":{
     "match_all":{

     }
  }
}