首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >MongoDB基本聚合函数使用

MongoDB基本聚合函数使用

原创
作者头像
玖叁叁
发布于 2023-04-14 15:43:31
发布于 2023-04-14 15:43:31
1.5K0
举报
文章被收录于专栏:玖叁叁玖叁叁

$match

$match是MongoDB聚合函数中最常见的函数之一。它允许用户根据指定的条件过滤文档。例如,如果我们有一个存储员工信息的集合,并且想要查找所有工资大于5000的员工,可以使用以下命令:

代码语言:javascript
复制
db.employees.aggregate([
   { $match : { salary : { $gt : 5000 } } }
])

$group

$group是另一个常用的聚合函数。它允许用户根据指定的字段对文档进行分组,并计算每个组的统计信息。例如,如果我们有一个存储销售信息的集合,并且想要按照销售员对销售额进行分组,可以使用以下命令:

代码语言:javascript
复制
db.sales.aggregate([
   { $group : { _id : "$salesman", totalSales : { $sum : "$amount" } } }
])

这个命令将按照salesman字段对文档进行分组,并计算每个组的销售额总和。

$project

$project函数允许用户选择特定的字段,并将它们包含在输出结果中。例如,如果我们有一个存储用户信息的集合,并且只想要包含用户名和年龄字段,可以使用以下命令:

代码语言:javascript
复制
db.users.aggregate([
   { $project : { name : 1, age : 1 } }
])

这个命令将只包含name和age字段。

$sort

$sort函数允许用户按照指定的字段对文档进行排序。例如,如果我们有一个存储学生信息的集合,并且想要按照年龄对学生进行排序,可以使用以下命令:

代码语言:javascript
复制
db.students.aggregate([
   { $sort : { age : 1 } }
])

这个命令将按照年龄字段对文档进行升序排序。

$limit

$limit函数允许用户限制查询结果的数量。例如,如果我们有一个存储图书信息的集合,并且只想要显示前10本书的信息,可以使用以下命令:

代码语言:javascript
复制
db.books.aggregate([
   { $limit : 10 }
])

这个命令将只显示前10条文档。

$skip

$skip函数允许用户跳过查询结果中的指定数量的文档。例如,如果我们有一个存储电影信息的集合,并且只想要显示排名第11到第20的电影,可以使用以下命令:

代码语言:javascript
复制
db.movies.aggregate([
   { $skip : 10 },
   { $limit : 10 }
])

这个命令将跳过前10个文档,并只显示接下来的10个文档。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

目录
  • $match
  • $group
  • $project
  • $sort
  • $limit
  • $skip
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档