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

相关推荐
严同学正在努力12 分钟前
Oracle数据技术运维大全(下篇)
运维·数据库·ai·oracle·架构
Irene199138 分钟前
FROM DUAL UNION ALL 是 Oracle 特有的写法,专门用来在 SQL 中手工构造一个固定的多行数据集(即“行值构造函数”)。
oracle·行值构造函数
catino1 小时前
spring-事务@Transactional
java·数据库·spring
数智启示录1 小时前
Apache Doris 4.0.8 数据建模实战(第 2 篇):同一批订单写进三种模型,为什么得到三个答案
大数据·数据库·面试
数智启示录1 小时前
Apache Doris 4.0.8 CDC 正确性(第 9 篇):Flink Checkpoint 一直成功,表里为什么仍是旧数据
大数据·数据库·经验分享·面试·flink
拾光Ծ2 小时前
【MySQL】对表数据的操作:增删查改(CRUD)
android·数据库·sql·mysql
这个DBA有点耶15 小时前
2026年分布式数据库有哪些主流选择?先评估这5个维度再决定
数据库·分布式·dba
这个DBA有点耶18 小时前
从MySQL 5.7到8.0:JSON查询性能差在哪?虚拟列索引vs多值索引怎么选
数据库·mysql·架构
胡写代码18 小时前
数据库审计字段,别再每张表各写一套了——我统一成这 6 个字段
数据库
SelectDB1 天前
为什么 JSON 正在成为分析数据库新的竞争点?
数据库·json·agent