AZ:MongoDB 备忘单🌱
内容📖
定义🌳
- What is MongoDB?
MongoDB 是一个文档数据库,具有您所需的可扩展性和灵活性以及所需的查询和索引功能。
- What is a Database?
数据库包含一组集合。数据库通常有一个单独的文件系统目录来保存其数据。每个数据库在文件系统上都有自己的一组文件。通常,一个数据库与一个应用程序关联。
- What is a Collection?
集合是一组文档。如果说文档是 MongoDB 中关系数据库表中一行的对应关系,那么集合就是表的对应关系。
- What is a Document?
MongoDB 中的一条记录就是一个文档,它是由字段和值对组成的数据结构。MongoDB 文档类似于 JSON 对象。字段的值可以包含其他文档、数组以及文档数组。
- What is a Field?
文档具有动态模式。动态模式允许同一集合中的文档具有不同的字段集,并且公共字段可以使用不同的字段名。
- What is a Primary Key?
在 MongoDB 中,存储在集合中的每个文档都需要一个唯一的 _id 字段作为主键。如果插入的文档省略了 _id 字段,MongoDB 驱动程序会自动为 _id 字段生成一个 ObjectId。
- Why use NoSQL?
NoSQL 数据库允许插入无需预定义架构的数据。这使得 NoSQL 数据库成为存储和处理非结构化数据的理想选择。
- Why use MongoDB?
MongoDB 是一个文档数据库,这意味着它以类似 JSON 的文档形式存储数据。我们相信这是思考数据最自然的方式,并且比传统的行/列模型更具表现力和功能强大。
MongoDB Shell 命令
- Show Database
show dbs
此命令将显示 MongoDB 服务器中的所有数据库。
- Use Database
use <database_name>
此命令将切换到您想要使用的数据库。
- Show Collections
show collections
此命令将显示您正在使用的数据库中的所有集合。
- Drop Database
db.dropDatabase()
此命令将删除您正在使用的数据库。
- Create Collection
db.createCollection("<collection_name>")
此命令将在您正在使用的数据库中创建一个集合。
- Insert a Document
db.<collection_name>.insertOne({
    <key>: <value>,
    <key>: <value>,
    ...
})
此命令将在您正在使用的集合中插入一个文档。
- Insert Multiple Documents
db.<collection_name>.insertMany([
    {
        <key>: <value>,
        <key>: <value>,
        ...
    },
    {
        <key>: <value>,
        <key>: <value>,
        ...
    },
    ...
])
此命令将在您正在使用的集合中插入多个文档。
- Find Documents
db.<collection_name>.find()
此命令将查找您正在使用的集合中的所有文档。
- Find Documents with Query
db.<collection_name>.find({
    <key>: <value>
})
此命令将找到您正在使用的集合中与查询匹配的所有文档。
- Count Documents
db.<collection_name>.find({
    <key>: <value>
    }).count()
此命令将计算您正在使用的集合中与查询匹配的所有文档。
- Limit Documents
db.<collection_name>.find().limit(<number>)
此命令将限制 find 命令返回的文档数量。
- forEach()
db.<collection_name>.find().forEach(function(doc) {
    print("Key: " + doc.<key> + " Value: " + doc.<value>);
})
此命令将遍历您正在使用的集合中的所有文档并打印每个文档的键和值。
- Find One Document
db.<collection_name>.findOne({
    <key>: <value>
})
此命令将在您正在使用的集合中找到与查询匹配的第一个文档。
- Update a Document
db.<collection_name>.updateOne({
    <key>: <value>
}, {
    $set: {
        <key>: <value>
    }
})
此命令将更新您正在使用的集合中与查询匹配的第一个文档。$set 用于更新文档。
- Increment a Document
db.<collection_name>.updateOne({
    <key>: <value>
}, {
    $inc: {
        <key>: <value>
    }
})
此命令将增加您正在使用的集合中与查询匹配的第一个文档的键的值。$inc 用于增加键的值。
- Delete a Document
db.<collection_name>.deleteOne({
    <key>: <value>
})
此命令将删除您正在使用的集合中与查询匹配的第一个文档。
- Add new field to a Document
db.<collection_name>.updateOne({
    <key>: <value>
}, {
    $set: {
        <new_key>: <new_value>
    }
})
此命令将向您正在使用的集合中与查询匹配的第一个文档添加一个新字段。
- Greater than
db.<collection_name>.find({
    <key>: {
        $gt: <value>
    }
})
此命令将查找您正在使用的集合中所有键大于值的文档。
- Greater than or equal to
db.<collection_name>.find({
    <key>: {
        $gte: <value>
    }
})
此命令将查找您正在使用的集合中所有键大于或等于该值的文档。
- Less than
db.<collection_name>.find({
    <key>: {
        $lt: <value>
    }
})
此命令将查找您正在使用的集合中所有键小于值的文档。
- Less than or equal to
db.<collection_name>.find({
    <key>: {
        $lte: <value>
    }
})
此命令将查找您正在使用的集合中所有键小于或等于该值的文档。
- Not equal to
db.<collection_name>.find({
    <key>: {
        $ne: <value>
    }
})
此命令将查找您正在使用的集合中所有具有不等于该值的键的文档。
- And
db.<collection_name>.find({
    $and: [
        {
            <key>: <value>
        },
        {
            <key>: <value>
        }
    ]
})
此命令将找到您正在使用的集合中与查询匹配的所有文档。
- Or
db.<collection_name>.find({
    $or: [
        {
            <key>: <value>
        },
        {
            <key>: <value>
        }
    ]
})
此命令将找到您正在使用的集合中与查询匹配的所有文档。
- Sort
db.<collection_name>.find().sort({
    <key>: <value>
})
此命令将按键对您使用的集合中的所有文档进行排序。
- Sort Descending
db.<collection_name>.find().sort({
    <key>: -1
})
此命令将按键按降序对您正在使用的集合中的所有文档进行排序。
- Drop Collection
db.<collection_name>.drop()
此命令将删除您正在使用的集合。
谢谢你🌿
感谢您抽出时间阅读我的博文!希望您觉得它有用且信息丰富。您的支持和参与对我意义重大。如果您有任何疑问或反馈,请随时联系我们。感谢您一直以来的关注,并期待未来分享更多有价值的内容。再次感谢您!
参考
我的其他内容
文章来源:https://dev.to/burakboduroglu/mongodb-cheat-sheet-1a6a
 后端开发教程 - Java、Spring Boot 实战 - msg200.com
            后端开发教程 - Java、Spring Boot 实战 - msg200.com