У меня есть запрос 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.