目录
一、MongoDB使用场景
一般使用在读写频繁或事务性较低时使用,对于高并发要求很适合。
“_id”为mongodb的默认主键。
二、常用命令
命令 | 作用 |
mongod --dbpath 指定目录( --port 端口号) | 设置mongodb的数据存放目录(设置端口号,默认为27017) |
mongo | 启动mongo客户端 |
show dbs/show databases | 查看当前数据库 |
use 数据库名 | 进入某个数据库,mongodb的集合和数据库都不需要手动创建,当数据库或集合不存在时会自动创建(第一次插入文档时创建)。 |
db | 查看当前数据库 |
show collections | 查看当前数据库的所有集合 |
db.<集合名>.save(文档:json对象) | 向数据库中指定集合保存一条文档数据 |
db.<集合名>.insert(文档:json对象) | 向数据库中指定集合插入一条文档数据 |
db.<集合名>.insert([文档1,文档2,文档3]) | 插入多个时可以使用数组,中括号 |
db.<集合名>.insertOne(文档:json对象) | 和insert插入单条数效果一样,看起来更清晰而已 |
db.<集合名>.insertMany([文档1,文档2,文档3]) | 和insert插入多个时效果一样,看起来更清晰而已 |
db.<集合名>.find() | 查询当前集合里的所有文档,返回一个数组 |
db.<集合名>.find(文档:json对象) | 查询包含关键字的文档 |
db.<集合名>.findOne() | 查询符合条件的第一条,返回一个对象可通过.属性获取属性值 |
db.<集合名>.find().count() | 统计返回的数组长度 |
db.<集合名>.update(查询条件:json对象,新对象:json对象) | 更新文档,先查询,再更新,默认会用新对象替代旧对象,默认只改一个文档 |
db.<集合名>.update(查询条件:json对象,新对象:json对象,{multi : true }) | 可以同时修改多个文档 |
db.<集合名>.update(查询条件:json对象,{$set: 新对象:json对象}) | 添加$set后就变成了设置属性,若改属性存在则更新,否则增加 |
db.<集合名>.update(查询条件:json对象,{$unset: 新对象:json对象}) | 添加$unset后会删除对应的属性 |
db.<集合名>.updateMany(查询条件:json对象,新对象:json对象) | 和update类似,可直接修改多个文档 |
db.<集合名>.updateOne(查询条件:json对象,新对象:json对象) | 和默认的update类似,只修改一个文档 |
db.dropDataBase() | 删除数据库 |
db.<集合名>.drop() | 删除集合 |
db.<集合名>.remove() | 清空集合(性能略差) |
db.<集合名>.remove(查询条件:json对象) | 删除符合查询条件的所有文档 |
db.<集合名>.remove(查询条件:json对象, true) | 删除符合查询条件的一个文档 |
db.<集合名>.deleteOne(查询条件:json对象) | 删除符合查询条件的一个文档 |
db.<集合名>.deleteMany(查询条件:json对象) | 删除符合查询条件的所有文档 |
模糊查询 | mongoDB 模糊查询 - 简书 |
分页查询 | mongodb 分页查询的方法及性能 - 简书 |
或查询和与查询 | mongodb复杂条件查询 (or与and)_tjbsl的博客-CSDN博客_mongodb or查询 |