适用对象:
MongoDB vCore
该 $floor
运算符返回小于或等于指定数字的最大整数。
语法
运算符的 $isArray
语法如下所示:
{ $floor: <number> }
参数
DESCRIPTION | |
---|---|
<number> |
解析为数字的任何有效表达式。 |
示例:
让我们了解数据集中示例数据的 stores
使用情况,以计算平均销售额和折扣的下限值。
db.stores.aggregate([
{ $match: { "_id": "40d6f4d7-50cd-4929-9a07-0a7a133c2e74" } },
{
$project: {
name: 1,
averageSalesFloor: {
$floor: {
$divide: [
"$sales.totalSales",
{ $size: "$sales.salesByCategory" }
]
}
},
categoriesWithFloorSales: {
$map: {
input: "$sales.salesByCategory",
as: "category",
in: {
categoryName: "$$category.categoryName",
floorSales: { $floor: "$$category.totalSales" }
}
}
}
}
}
])
这将生成以下输出:
{
"_id": "40d6f4d7-50cd-4929-9a07-0a7a133c2e74",
"name": "Proseware, Inc. | Home Entertainment Hub - East Linwoodbury",
"averageSalesFloor": 30372,
"categoriesWithFloorSales": [
{
"categoryName": "Sound Bars",
"floorSales": 2120
},
{
"categoryName": "Home Theater Projectors",
"floorSales": 45004
},
{
"categoryName": "Game Controllers",
"floorSales": 43522
},
{
"categoryName": "Remote Controls",
"floorSales": 28946
},
{
"categoryName": "VR Games",
"floorSales": 32272
}
]
}