MongoDB集合包含许多带有以下道具的文档:
{
name: <value>
timestamp: <value>,
price: <value>
}
timestamp
不是唯一的,我想对每个单独的price
找到的timestamp
值求和:
const entries = await Subscription
.aggregate([
{ $match: { timestamp: parseInt(req.params.timestamp, 10) } },
{ $group: { _id: null, sum: { $sum: "$price" } } },
{ $project: {
_id: false,
sum: true
}},
{ $limit: parseInt(req.params.limit, 10) }
])
如何将单个timestamp
添加到查询输出中?试过
{ $project: {
_id: false,
sum: true,
timestamp: { $literal: parseInt(req.params.timestamp, 10) }
}}
但是在我看来,当文档中存在该字段时,它就像在输出中添加一个字段。