mongodb存储桶边界大于查询

时间:2019-11-04 08:04:10

标签: mongodb mongodb-query aggregation-framework

我有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。

0 个答案:

没有答案