小程序
小游戏
企业微信
微信支付
扫描小程序码分享
小程序云开发聚合如何将要查询的记录进行 如同 collection.field({})进行指定返回?
db.collection('todo').aggregate()
.lookup({})
获取到的是 记录的所有数据,以及联表记录的所有数据
如何操作才能 主表只获取指定返回结果中记录需返回的字段
3 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
// 联表 let query = await db.collection(collectionName) .aggregate() .lookup(joinParams); /* query = await query.replaceRoot({ newRoot: $.mergeObjects([ $.arrayElemAt(['$USER_DETAIL', 0]), '$$ROOT' ]) })*/ // 查询条件 if (util.isDefined(where)) query = await query.match(fmtWhere(where)); // 取出特定字段 if (util.isDefined(fields) && fields != '*') query = await query.project(fmtFields(fields)); // 排序 if (util.isDefined(orderBy)) { query = await query.sort(fmtJoinSort(orderBy)); } // 分页 query = await query.skip((page - 1) * size + offset).limit(size);
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
.project
db.collection('a') .aggregate() .lookup({ from: "b", localField: "a.openid",//a表与b表匹配的字段 foreignField: "b.openid", //b表与a表匹配的字段 as: "too" }) .match({xx: xx}) .project({ a.id:1, 'too.xx':1, 'too.yy':1 }) .end()
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
// 联表 let query = await db.collection(collectionName) .aggregate() .lookup(joinParams); /* query = await query.replaceRoot({ newRoot: $.mergeObjects([ $.arrayElemAt(['$USER_DETAIL', 0]), '$$ROOT' ]) })*/ // 查询条件 if (util.isDefined(where)) query = await query.match(fmtWhere(where)); // 取出特定字段 if (util.isDefined(fields) && fields != '*') query = await query.project(fmtFields(fields)); // 排序 if (util.isDefined(orderBy)) { query = await query.sort(fmtJoinSort(orderBy)); } // 分页 query = await query.skip((page - 1) * size + offset).limit(size);
.project
db.collection('a') .aggregate() .lookup({ from: "b", localField: "a.openid",//a表与b表匹配的字段 foreignField: "b.openid", //b表与a表匹配的字段 as: "too" }) .match({xx: xx}) .project({ a.id:1, 'too.xx':1, 'too.yy':1 }) .end()