0
其餘
您好,我有以下代碼現在的工作:貓鼬羣聚集不回場
app.get('/api/checkAv/:checkIn/:checkOut', function(req, res) {
var checkIn = req.params.checkIn,
checkOut = req.params.checkOut,
roomType = req.params.roomType,
startDate = moment(checkIn),
endDate = moment(checkOut),
nights = endDate.diff(startDate, 'days');
model.Av.aggregate([
{$match: {dateOfDay: {$gte: new Date(checkIn), $lt:new Date(checkOut)} }},
{$group: {
_id: '$roomId',
total: {$sum: '$price'},
count: {$sum: 1},
avg: {$avg: '$price'}
}},
{ $match: { count: { $gte: nights } } }
], function (err, result) {
if (err)
res.send(err);
res.json(result);
});
});
還給我一樣的東西:
[
{
"_id": "545b4848344044fa3ec9ac74",
"total": 180,
"count": 2,
"avg": 90
}
]
,但我想我回報也一些其他領域從集合,我不需要/有他們在小組條款例如:可用,價格...
閱讀Mongoose文檔我明白我需要使用$項目的這個問題,所以我添加了s omething像:
{$project: {price: "$price"}}
,現在我得到的只是空的結果...我在$組原因類似嘗試添加:
價格:「$價格」沒有成功,我得到:「例外:組合字段「價格」必須定義爲一個對象內的表達式「,我忽略了錯誤而沒有成功,我應該如何實現這一目標?
謝謝你的價格:{$ first:'$ price'}是我一直在尋找 – Teodor 2014-11-08 18:17:25