假设我有一个包含具有相同结构的嵌入文档数组的文档:
{
"_id": ObjectId('5c41c2a3c3238118a0950a7b'),
"subdocuments": [
{
"_id": ObjectId('5c41c2b4c3238118a0950a7c'),
"field1: "A",
"field2: "A"
},
{
"_id": ObjectId('5c41c2b6c3238118a0950a7d'),
"field1: "B",
"field2: "C"
}
]
}
我想在同一个子文档中进行比较field1
,field2
并将结果投影到该子文档中,即:
{
"_id": ObjectId('5c41c2a3c3238118a0950a7b'),
"subdocuments": [
{
"_id": ObjectId('5c41c2b4c3238118a0950a7c'),
"field1: "A",
"field2: "A",
"fields_equal": true
},
{
"_id": ObjectId('5c41c2b6c3238118a0950a7d'),
"field1: "B",
"field2: "C",
"fields_equal": false
}
]
}
我想这样做而不需要放松subdocuments
。这不起作用:
'$addFields': {
'subdocuments.fields_equal': {
'$eq': ['$subdocuments.field1','$subdocuments.field2']
}
}
关于如何做的任何想法?或者即使有可能?