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()删除多条数据

相关推荐
剩下了什么15 小时前
MySQL JSON_SET() 函数
数据库·mysql·json
山峰哥16 小时前
数据库工程与SQL调优——从索引策略到查询优化的深度实践
数据库·sql·性能优化·编辑器
较劲男子汉16 小时前
CANN Runtime零拷贝传输技术源码实战 彻底打通Host与Device的数据传输壁垒
运维·服务器·数据库·cann
java搬砖工-苤-初心不变16 小时前
MySQL 主从复制配置完全指南:从原理到实践
数据库·mysql
山岚的运维笔记18 小时前
SQL Server笔记 -- 第18章:Views
数据库·笔记·sql·microsoft·sqlserver
roman_日积跬步-终至千里19 小时前
【LangGraph4j】LangGraph4j 核心概念与图编排原理
java·服务器·数据库
汇智信科19 小时前
打破信息孤岛,重构企业效率:汇智信科企业信息系统一体化运营平台
数据库·重构
野犬寒鸦19 小时前
从零起步学习并发编程 || 第六章:ReentrantLock与synchronized 的辨析及运用
java·服务器·数据库·后端·学习·算法
晚霞的不甘20 小时前
揭秘 CANN 内存管理:如何让大模型在小设备上“轻装上阵”?
前端·数据库·经验分享·flutter·3d
市场部需要一个软件开发岗位20 小时前
JAVA开发常见安全问题:纵向越权
java·数据库·安全