Mongodb

常用命令

1、查看有哪些数据库

sql 复制代码
show databases; // 
show dbs;

2、 使用某个数据库

use database

3、插入数据

db.users.insertOne({name:"wwww"})

4.查看

db.users.find()

5、插入多条数据

db.users.insertMany([{name:"王五",age:18},{name:"赵六",age:22}])

6、 限制返回条数 limit

db.users.find().limit(1)

7、按照指定字段排序 sort

按照age年龄段排序

db.users.find().sort({age:-1})。 为-1就是降序排序,为1就是升序排序

多条件排序

db.users.find().sort({age:-1,name:1})

8、skip() 跳过一些查询结果

// 未使用skip()函数

db.users.find().sort({age:-1,name:1}).limit(3)

// 跳过第一条数据

db.users.find().sort({age:-1,name:1}).limit(3).skip(1)

9.find({键值对条件}) ,查询指定条件内容

db.users.find({age:15})

10、在find函数中显示要返回的字段

db.users.find({要返回的匹配内容},{要返回的字段信息})

db.users.find({age:18},{name:1})

// _id:0 ---- Id字段隐藏

db.users.find({age:18},{name:1,_id:0})

使用find 排除某些字段

db.users.find({age:18},{name:0})

11、 查询指定字段大于的条件 $gt

复制代码
db.users.find({age:{$gt:15}})

//$lt:小于

复制代码
db.users.find({age:{$lt:20}})

// 等于 $eq

复制代码
db.users.find({age:{$eq:18}})

12、in 查看集合中匹配的元素 in

db.users.find({age:{$in:[18,15]}})

13、不在数组中的值 $nin

db.users.find({age:{$nin:[18,15]}})

14.$exists 判断某个字段是否存在

// 返回有age的用户

复制代码
db.users.find({age:{$exists:true}})

// 返回没有age的用户

复制代码
db.users.find({age:{$exists:0}})

15. 大于等于 gte,小于等于 lte

复制代码
db.users.find({age:{$gte:10,$lte:15}})

同理 $and

复制代码
db.users.find({$and:[{age:{$gte:16}},{age:{$lte:18}}]})

$ not

不等于15,18的集合

复制代码
db.users.find({age:{$not:{$in:[15,18]}}})

正则表达式 $regex: /expression/

复制代码
db.users.find({name:{$regex:/张/}})

忽略大小写 $options:'i'

复制代码
db.users.find({name:{$regex:/张/,$options:'i'}})

聚合 countDocuments() 统计文档数量

统计文档数量

db.users.count()

复制代码
db.users.count({age:{$gte:15}})

findOne() 查询一条数据

// 查询age大于等于15 的第一条数据

复制代码
db.users.findOne({age:{$gte:15}})

updateOne 更新一条数据

复制代码
db.users.updateOne({age:15},{$set:{name:"lisi"}})

// 值不不存在也能给更新

复制代码
db.users.updateOne({name:"wwww"},{$set:{age:66}})

updateMany() 更新多条数据

deleteOne() 删除数据

db.users.deleteOne({name:"wwww"})

// 使用Id删除

复制代码
db.users.deleteOne({_id:ObjectId("661deb540bc6c23a98004c85")})

deleteMany()删除多条数据

相关推荐
醇醛酸醚酮酯18 分钟前
Qt项目锻炼——TODO清单(二)
开发语言·数据库·qt
GreatSQL社区1 小时前
用systemd管理GreatSQL服务详解
数据库·mysql·greatsql
掘根1 小时前
【MySQL进阶】错误日志,二进制日志,mysql系统库
数据库·mysql
weixin_438335401 小时前
基础知识:mysql-connector-j依赖
数据库·mysql
小明铭同学1 小时前
MySQL 八股文【持续更新ing】
数据库·mysql
Mr_Xuhhh1 小时前
信号与槽的总结
java·开发语言·数据库·c++·qt·系统架构
Fireworkitte1 小时前
Redis 源码 tar 包安装 Redis 哨兵模式(Sentinel)
数据库·redis·sentinel
qq_339282232 小时前
postgressql 如何修改模式的所有表的所有者
数据库
西岭千秋雪_3 小时前
Redis性能优化
数据库·redis·笔记·学习·缓存·性能优化