MongoDB $floor 运算符介绍
在 MongoDB 中, $floor
运算符用于向下取整,返回小于等于指定数值的最大整数。
语法
$floor
运算符的语法如下:
{ $floor: <number> }
其中,<number>
是要取整的数字。
使用场景
在某些情况下,需要对数据库中的数值进行取整操作,例如对数据进行四舍五入,或者向下取整等。这时可以使用 $floor
运算符。
示例
下面提供两个示例来演示 $floor
运算符的使用。
示例 1
假设有一个 students
集合,存储了学生的成绩信息。需要查询每个学生的平均分,并向下取整到整数位。
示例数据:
{ name: "Alice", scores: [75, 85, 90] }
{ name: "Bob", scores: [80, 90, 95] }
查询代码:
db.students.aggregate([
{
$project: {
name: 1,
averageScore: {
$floor: {
$avg: "$scores"
}
}
}
}
])
查询结果:
{ "_id": ObjectId("..."), "name": "Alice", "averageScore": 83 }
{ "_id": ObjectId("..."), "name": "Bob", "averageScore": 88 }
示例 2
假设有一个 orders
集合,存储了订单的金额信息。需要查询所有订单金额的整数部分。
示例数据:
{ orderNo: "202201010001", amount: 85.6 }
{ orderNo: "202201010002", amount: 120.8 }
{ orderNo: "202201010003", amount: 99 }
查询代码:
db.orders.aggregate([
{
$project: {
orderNo: 1,
integerPart: {
$floor: "$amount"
}
}
}
])
查询结果:
{ "_id": ObjectId("..."), "orderNo": "202201010001", "integerPart": 85 }
{ "_id": ObjectId("..."), "orderNo": "202201010002", "integerPart": 120 }
{ "_id": ObjectId("..."), "orderNo": "202201010003", "integerPart": 99 }
结论
本文介绍了 MongoDB 中的 $floor
运算符,它可以用于向下取整并返回小于等于指定数值的最大整数。在实际应用中,可以通过 $floor
运算符对数据进行取整操作,满足不同的业务需求。