我有mongodb bucket查询来获取下限和上限计数。现在,我希望大于查询以显示> 10%,> 20%,> 50%,> 60%等的折扣。
我不知道如何比边界包括刨丝器。或使用其他任何方式来获得优惠计数?
db.getCollection('product').aggregate([{$facet: {
"offers":[{$unwind:"$variants"},
{$match:{"variants.prices.discount_percent": { $exists: 1 },
"variants.is_published":{"$ne":false}}},
{
$bucket: {
groupBy: "$variants.prices.discount_percent",
boundaries: [ 0, 20, 30, 40, 100,Infinity ],
output: {
"count": { $sum: 1 }
}
} }
]}}
])
在这种情况下,我想要的是折扣总数。因此20%的折扣包括30%以上的折扣,30%的折扣包括40%的折扣等等。
输出应为:
20%-(10), 30%-(5), 40%-(2)等。
这里20%的计数是10,其中也包括5和2。因为它的> =20。30%包括2的40%,因为它的> = 30。