| 语法 | { $bucket: { groupBy, boundaries: [...], default, output } } |
|---|---|
| 边界 | 左闭右开区间,last boundary 需大于最大值 |
| 自动化 | $bucketAuto 按数量自动切分 |
示例
示例
db.orders.aggregate([
{ $bucket: {
groupBy: "$qty",
boundaries: [0, 10, 50, 100],
default: "large",
output: { orders: { $sum: 1 }, totalQty: { $sum: "$qty" } }
} }
])边界外的值走 default 桶,不给 default 时遇到越界值直接报错。