📅  最后修改于: 2023-12-03 15:17:42.853000             🧑  作者: Mango
在使用 Mongoose 进行 MongoDB 数据库操作时,我们经常需要查询文档中数组的长度。Mongoose 提供了 array.length
方法来实现。
Model.find({ $and: [{ array: { $exists: true } }, { $where: "this.array.length == 3" }] }, function(err, docs) {
console.log(docs);
});
上面的代码中,我们使用 $where
操作符来查询 array
字段长度为 3 的文档。注意 $where
运行在数据库端,性能较差,不建议在生产环境中使用。
Model.aggregate([{ $project: { arrayLength: { $size: "$array" } } }], function(err, result) {
console.log(result);
});
上面的代码使用了 $size
操作符来获取所有文档的 array
数组长度,并将结果保存在 arrayLength
字段中。