如何解决如何计算猫鼬在您的引用中具有字段的元素?
我需要计算您的引用类型具有多少个元素的属性,例如:
const workerSchema = new Schema(
{
userId: {
type: Types.ObjectId,ref: 'User',required: true,},active: {
type: Boolean,}
);
const userSchema = new Schema(
{
name: {
type: String,company: {
type: String,);
我想计算活跃的工人数(active:true),按公司名称搜索。
我已经尝试过:
Worker.find({ active: true })
.populate({
path: 'userId',match: { company: 'name' },})
.countDocuments();
但是,这要计算所有工作人员并填充匹配的人员(我只需要计算匹配项)。
并且:
Worker.find({
'userId.company': 'name',active: true,});
但是不起作用:(
有人可以帮助我吗?
解决方法
我用$ lookup解决。 https://docs.mongodb.com/master/reference/operator/aggregation/lookup/
$lookup: {
from: 'users',localField: 'userId',foreignField: '_id',as: 'allUsers',},
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。