繁体   English   中英

使用非数组字段查找等于任何一个数组元素查询的文档

[英]find the document which equals any one of the array element query with a non array field

mongo db 模式变量

 status:{
    type: Number,
    enum: [0,1,2,3,4,5], //0-NOT ACCEPTED,1-COMPLETED,2-PENDING
    default: 0
  }

状态存储在数据库中,如 0 或 1 或 2。用户选择的状态搜索是数据数组,如

status: {1,2}

如何获取包含任何一个数组元素的文档。 我无法进行静态搜索,因为数组大小每次都会改变

  // if(status){
    //         query = {
    //           ...query,
    //           "status": status
    //         }
    // }

    console.log(body_status);

    if(body_status){
      query = {
        ...query,
        "status": {"$in":body_status}
      }
}

这对我有用。

我不知道我是否理解这个问题,但我认为你想要这样的东西:

db.collection.find({
  "status": {
    "$in": [
      1,
      2,
      4
    ]
  }
})

示例在这里

请检查它是否按预期工作,在这种情况下,请使用更多信息更新问题。

或者,也许你想要的东西,像这样

db.collection.find({
  "status": 1
})

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM