我想在"捐赠"的最后一个元素之间取差异(减法)。具有当前日期的数组 我正在尝试使用代码,但无法正确使用此代码,我花了更多时间来解决此问题。请回答解决方案。
db.users.aggregate( [ { $project: { dateDifference: { $subtract: [ new Date(), {"donations":{ $slice: -1 }} ] } } } ]);
答案 0 :(得分:1)
$slice
返回数组的一部分。您需要$arrayElemAt
从给定索引处的数组返回元素。
像
这样的东西db.users.aggregate( [ { $project: { dateDifference: { $subtract: [ new Date(), { $arrayElemAt:["$donations",-1] } ] } } } ]);