返回
MongoDB学习笔记:剖析CRUD操作(上)
后端
2023-12-28 21:54:45
前言
在数据管理领域,关系型数据库管理系统(RDBMS)长期占据着主导地位。然而,随着大数据和云计算的兴起,传统 RDBMS 在应对海量数据和高并发场景时,逐渐显露出局限性。由此,非关系型数据库(NoSQL)应运而生,MongoDB 便是一款备受瞩目的 NoSQL 数据库。
MongoDB 是一款开源的、文档型的数据库管理系统,其设计理念是将数据存储在类似 JSON 的文档中,而不是传统的行和列形式。这种设计方式使得 MongoDB 具有极高的灵活性,能够轻松处理复杂的数据结构和快速检索数据。
本文作为系列笔记的开篇,将带您领略 MongoDB 的基本操作(CRUD)之创建(Create)和读取(Read),并对 MongoDB 的数据类型和索引进行深入剖析,为您后续的 MongoDB 学习打下坚实的基础。
创建(Create)
创建操作是将新数据插入数据库中的过程。在 MongoDB 中,创建操作可以通过两种方式实现:
- 直接插入法 :这种方法简单直接,只需使用
insert()
方法将数据插入数据库即可。例如:
db.collection.insert({
name: "张三",
age: 20,
gender: "男"
})
- 保存法 :保存法除了可以插入新数据外,还可以更新已有数据。当要插入的数据在数据库中不存在时,保存法会将数据插入数据库;当要插入的数据在数据库中已存在时,保存法会用新数据替换旧数据。例如:
db.collection.save({
name: "张三",
age: 20,
gender: "男"
})
读取(Read)
读取操作是从数据库中提取数据的过程。在 MongoDB 中,读取操作可以通过多种方法实现:
- 查询法 :查询法是最常用的读取方法,它允许您根据一定的条件从数据库中提取数据。例如:
db.collection.find({
name: "张三"
})
以上查询将返回所有名为“张三”的数据。
- 聚合法 :聚合法允许您对数据进行分组、排序、计数等操作,从而获得更具价值的信息。例如:
db.collection.aggregate([
{ $group: { _id: "$gender", count: { $sum: 1 } } }
])
以上聚合将根据性别对数据进行分组,并统计每组数据的数量。
- 游标法 :游标法允许您逐条读取数据。例如:
var cursor = db.collection.find();
while (cursor.hasNext()) {
var doc = cursor.next();
console.log(doc);
}
结语
本篇笔记作为系列笔记的开篇,为您介绍了 MongoDB 的基本操作(CRUD)之创建(Create)和读取(Read),并对 MongoDB 的数据类型和索引进行了深入剖析。在接下来的笔记中,我们将继续深入探索 MongoDB 的其他操作(Update 和 Delete)以及更高级的功能,敬请期待!
笔记参考 :