【发布时间】:2017-12-22 14:06:18
【问题描述】:
我知道如何让 MongoDB 根据这样的数组找到一行:
useritems.find({userid: useridhere, "items.id": idhere})
但是我将如何搜索并获取所有已激活的项目,或者基于items 属性获取所有项目?
比如:
useritems.find({userid: useridhere, "items.activated": true})
将导致从用户那里获取所有已激活的项目。
这是我的项目架构:
var userItemsSchema = new Schema({
userid : String,
items: [
{
id: {type: Number, default: 1},
activated: { type: Boolean, default: false},
endtime : {type: Number, default: 0},
},
],
});
module.exports = mongoose.model('useritems', userItemsSchema);
【问题讨论】:
-
您想高效获取所有激活用户吗?
-
这个已经被问过了,回答的很好;见stackoverflow.com/q/3985214/174843。
-
@VinceBowdren 我们知道。但在赏金期到期之前,它不能作为重复项关闭。有时问题会溜走
标签: node.js mongodb mongoose mongodb-query aggregation-framework