mongoDB 3.6 में शुरू करके, आप रिमूव वैरिएबल<का उपयोग कर सकते हैं /ए> सशर्त रूप से फ़ील्ड को बाहर करने के लिए।
आपके विशेष मामले में, परियोजना का चरण इस तरह दिखना चाहिए:
aggregate.project({
_id: 1,
last: { $cond: [ { $eq : [ '$_id', 'undo' ] }, '$date', '$$REMOVE' ] },
user: { $cond: [ { $eq : [ '$_id', 'undo' ] }, '$user', '$$REMOVE' ] },
app: { $cond: [ { $eq : [ '$_id', 'undo' ] }, '$app', '$$REMOVE' ] }
});