在带有数组Mongoose的模型中使用Array查找

时间:2017-01-30 01:45:45

标签: arrays node.js mongodb mongoose

我需要创建一个查询,在数组中搜索通过数组的值的出现次数。

它不需要是一个确切的查询,但它可以带给我发生的事件

这是我模特的一部分

var OrdersCompaniesSchema = new Schema({
    target_studies: String,
    target_grade: String,
    interests : [String], // Contains for example ["Works","Sciences","Economy"]
    stock: Number
})

我尝试了这样的查询

db.orderscompanies.find({"interests": { "$in": ["Works","Banks","Sports"] }})

但是这个查询响应了一个空白数组[],因为它找到了确切的值,我不需要这个。我需要根据我正在咨询的数组找到任何一个发生的事件

有任何帮助吗?谢谢!

1 个答案:

答案 0 :(得分:2)

根据MongoDB文档here。它声明如果该字段包含数组,那么$ in运算符将选择其字段包含一个数组的文档,该数组至少包含一个与指定数组中的值匹配的元素。它不会根据您的问题尝试匹配所有事件。

它应该适合你。如果没有,你应该做其他一些错误。如果你能提出更具体的代码,它会帮助你!