当前位置:首页 > 站长知识 > 数据库 > 正文内容

MongoDB聚合运算符$divide的用法详解

2024-12-04数据库60

$divide聚合运算符返回两个表达式相除的结果,参数通过数组传递给$divide运算符。

语法

1
{ $divide: [ <expression1>, <expression2> ] }
  • 数组的第一个元素是被除数,第二个元素是除数,就是第一个元素除以第二个元素。

  • <expression>可以是任何可以被解析为数值的表达式。

举例

使用下面的脚本创建planning集合:

1
2
3
4
db.planning.insertMany( [
   { "_id" : 1, "city" : "New York", "hours" : 80, "tasks" : 7 },
   { "_id" : 2, "city" : "Singapore", "hours" : 40, "tasks" : 4 }
] )

下面的聚合使用$divide表达式使用hours字段除以常量8,计算工作天数:

1
2
3
4
5
db.planning.aggregate(
   [
     { $project: { city: 1, workdays: { $divide: [ "$hours", 8 ] } } }
   ]
)

操作返回的结果如下:

1
2
{ "_id" : 1, "city" : "New York", "workdays" : 10 }
{ "_id" : 2, "city" : "Singapore", "workdays" : 5 }