MongoDB知识点总结
2022-04-02 21:34:55摘要:一、MongoDB核心概念 1. 定位与优势 目标:处理海量数据(名称源自humongous),支持高可用、水平扩展。 数据模型: JSON文档结构:天然贴合面向对象思想,支持嵌套对象和数组。 动态模式:使用BSON(JSON的二进制扩展)存储,支持日期、二进制等扩展类型。 核心优势: 易用性:类JSON语法降低学习成本。 高性能:内存映射引擎、写优化设计。 高可靠性:副本集自动故障转移。 高扩展性:原生分布式架构(分片集群)。 2. SQL vs MongoDB概念对比 关键差异:MongoDB属于半结构化数据模型,无固定表结构,不支持事务级JOIN。 二、基础操作实战 1. 集合与文档操作 // 创建/切换数据库 use sample // 插入文档 db.persons.insertOne({ name: 张三, age: 22 }) db.persons.insertMany([...]) // 查询文档 db.movies.find( { year : 1975 } ) //单条件查询 db.movies.find( { year : 1989, title : Batman } ) //多条件and查询 db.movies.find( { $and : [ {title : Batman}, { category : action }] } ) // and的另一种形式 db.movies.find( { $or: [{year : 1989}, {title : Batman}] } ) //多条件or查询 db.movies.find( { title : /^B/} ) //按正则表达式查找 // 更新与删除 db.persons.updateMany({ age: 22 }, { $set: { status: active }}) db.persons.deleteMany({ age: { $lt: 18 }}) db.runCommand({ drop: persons }) // 删除集合 2. 查询条件对照表 | SQL | MQL | | ----…… 阅读全文