mongodb聚合_删除_可视化工具

3.5 MongoDB中limit和skip

MongoDB Limit() 方法

如果你需要在MongoDB中读取指定数量的数据记录,可以使用MongoDB的Limit方法,limit()方法接受一个数字参数,该参数指定从MongoDB中读取的记录条数。limit()方法基本语法如下所示:

java 复制代码
>db.COLLECTION_NAME.find().limit(NUMBER)

MongoDB Skip() 方法

我们除了可以使用limit()方法来读取指定数量的数据外,还可以使用skip()方法来跳过指定数量的数据,skip方法同样接受一个数字参数作为跳过的记录条数。skip() 方法脚本语法格式如下:

复制代码
>db.COLLECTION_NAME.find().limit(NUMBER).skip(NUMBER)  -- skip默认数量为0

查询案例

复制代码
> db.myTable.find().limit(2)
{ "_id" : ObjectId("62a46dee4c256eb2b320f208"), "id" : 1, "name" : "goudan", "address" : "beijing" }
{ "_id" : ObjectId("62a46e194c256eb2b320f209"), "id" : 2, "name" : "mz", "address" : "beijing" }
> db.myTable.find().limit(2).skip(2)
{ "_id" : ObjectId("62a46e644c256eb2b320f20a"), "id" : 3, "name" : "sjg", "address" : "beijing" }
{ "_id" : ObjectId("62a46e644c256eb2b320f20b"), "id" : 4, "name" : "haonan", "address" : "jianshazui" }
3.6 聚合查询

MongoDB 中聚合(aggregate)主要用于处理数据(诸如统计平均值,求和等),并返回计算后的数据结果。

有点类似 SQL 语句中的 count(*)

aggregate() 方法

MongoDB中聚合的方法使用aggregate()。aggregate() 方法的基本语法格式如下所示:

复制代码
>db.COLLECTION_NAME.aggregate(AGGREGATE_OPERATION)

查询案例

复制代码
-- 根据address过滤,统计每个城市人数
> db.myTable.aggregate([{$group : {_id : "$address", addr_users : {$sum : 1}}}])
{ "_id" : "tangshan", "addr_users" : 1 }
{ "_id" : "jianshazui", "addr_users" : 1 }
{ "_id" : "beijing", "addr_users" : 3 }
​
-- 查询总的数据条数
> db.myTable.count()
5
3.7 文档删除

官方推荐使用 deleteOne() 和 deleteMany() 方法。

删除 name 等于 sjg 的全部文档:

复制代码
> db.myTable.deleteMany({ name : "sjg" })
{ "acknowledged" : true, "deletedCount" : 1 }

删除 name 等于 gouda的一个文档:

复制代码
> db.myTable.deleteOne( { name: "goudan" } )
{ "acknowledged" : true, "deletedCount" : 1 }
​
> db.myTable.find()
{ "_id" : ObjectId("62a46e194c256eb2b320f209"), "id" : 2, "name" : "mz", "address" : "beijing" }
{ "_id" : ObjectId("62a46e644c256eb2b320f20b"), "id" : 4, "name" : "haonan", "address" : "jianshazui" }
{ "_id" : ObjectId("62a46eae4c256eb2b320f20c"), "id" : 5, "name" : "rz", "address" : "tangshan" }

如删除集合下全部文档:

复制代码
> db.myTable.deleteMany({})
{ "acknowledged" : true, "deletedCount" : 3 }
> db.myTable.find()
> db.myTable.count()
0
3.8 可视化工具操作

具体添加数据、删除数据、集合、库等的操作不多说,和MySQL操作类似。

IDEA进行MongoDB的连接

上述中可以填写Database来指定连接指定数据库,不写默认连接mongodb的默认test库。

Guff_hys_python数据结构,大数据开发学习,python实训项目-CSDN博客

相关推荐
用户938515635072 小时前
从 O(n²) 到 O(nlogn):一文读懂快速排序的“快”与“妙”
javascript·算法
To_OC3 小时前
手写快排次次翻车?别死背快排模板了,这才是面试官想听的底层逻辑
javascript·算法·排序算法
饼干哥哥4 小时前
Reddit VOC调研太慢?搭一个AI专家团队半小时洞察任何品类|以猫用饮水机为例
人工智能·算法·ai编程
地平线开发者5 小时前
Transformer模型部署之性能优化指南
算法
地平线开发者5 小时前
人在途中:从“编译失败”到“模型可落地”——CUDA 自定义算子
算法·自动驾驶
半个落月8 小时前
从递归到快速排序:用 JavaScript 把分治思想讲明白
javascript·算法·面试
小月土星9 小时前
JavaScript 快速排序:从 pivot、双指针到分治思想
javascript·算法·面试
小月土星9 小时前
JavaScript 递归入门:从 1 到 n 求和,再到数组扁平化
javascript·算法·面试
兵慌码乱20 小时前
面向桌面端的资产管理系统分层架构设计与核心模块实现
python·系统架构·sqlite·pyqt5·数据库设计·桌面应用开发·mvc架构