1
私はMongoDBでこのクエリを実行しています。しかし、私は集計ではなく、グループではなく、このクエリを使用します。これは私が使用していますクエリです:.group()から集約への変更
var query_part = {
"shipdate" : { "$gte" : 19940101, "$lt" : 19950101 },
"partsupp.supplier.nation.name" : { $regex : '^CANADA'},
"partsupp.part.name" : { $regex : '^forest', $options : 'i' }
};
var red = function(doc, out) {
out.sum += doc.quantity;
};
var half_total_quantity = db.lineitems.group({
key : "sum_quantity",
cond : query_part,
initial : { sum : 0 },
reduce : red
})[0].sum/2;
私はこのようなhalf_total_quantity計算を変更しようとしています:
db.lineitems.aggregate(
{ $match : {$and : [{"shipdate" : { "$gte" : 19940101, "$lt" : 19950101 }},
{"partsupp.supplier.nation.name" : { $regex : '^CANADA'}},
{"partsupp.part.name" : { $regex : '^forest', $options : 'i' }}
]}},
{ $group : {
sum_quantity : { $sum: "$quantity" }
}}
);
しかし、これがない作品は、誰かが私を助けることができますか? ありがとうございます。特に明記しない限り、あなたは$and
以降のすべての MongoDBのクエリ操作を必要とすることはほとんどない
これは完璧です。どうもありがとうございました。Neil Lunn – duknust
@duknust [回答を受け入れる](http://stackoverflow.com/help/accepted-answer)を忘れないでください。 –
完了Neil Lunn :) – duknust