我有收藏下图:-
{ _id: 123, images: [{ _id: ObjectId("213"), id: "1" }] }
我想添加一个字段 imageResourceID 这取决于 id 现场。
imageResourceID
id
{ _id: 123, images: [{ _id: ObjectId("213"), id: "1", imageResourceID: "1" }] }
db.collection.aggregate([ { "$addFields": { "images.imageResourceID": { "$map": { "input": "$otherImages", "as": "image", "in": "$$image.id" } } }} ])
它补充道 身份证件 所有子文档的字段。 我怎样才能加上 图像资源ID 值等于 场?
身份证件
图像资源ID
MongoDB 所以请容忍我。
MongoDB
你得绕过去 images $map in 表达 $地图 聚合和最终使用 $out 聚合以将它们写入另一个集合。
images
$map
in
$地图
$out
db.collection.aggregate([ { "$addFields": { "images": { "$map": { "input": "$images", "as": "image", "in": { "_id": "$$image._id" "id": "$$image.id", "imageResourceID": "$$image.id" } } } }}, { "$out": "<output-collection>" } ])