在 elasticsearch 中 must_not 如何两个字段同时过滤?

我想过滤某些数据,不让查询出来,我使用 must_not 发现并不支持 两个字段进行同时过滤

我试过

 query.bool.must_not.push({ term: { uid: 123, type: asp } });
//第一个直接就出错了。
 query.bool.must_not.push({ term: { uid: 123} });
 query.bool.must_not.push({ term: {type: asp } });
 //发现所有asp的数据都没有了。

我有很多asp的数据 但是我只想过滤 uid是123并且是type是asp的

请问这个如何多条件过滤?

阅读 5.3k
1 个回答
"must_not": [
        {"bool": {
          "must": [
            {"term": {
              "uid": {
                "value": "123"
              }
            }},
            {"term": {
              "type": {
                "value": "asp"
              }
            }}
          ]
        }}
      ]
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进