mongodb的查询指令find的简单应用
简单查找全部
查询全部条数
bash
1 | db.find() / db.find({}) |
字段条件简单查找
条件查找age为10的字段
bash
1 | db.find({age:10}) |
字段的筛选
查找全部条数,并且值保留age字段,会自带_id字段,因为数据库的默认添加
bash
1 | db.find({},{age:1}) |
去掉_id字段,只保留age字段
bash
1 | db.find({},{_id:0,age:1}) |
过滤掉age与sex字段,保留剩余字段
bash
1 | db.find({},{age:0,sex:0}) |
只保留age与sex字段
bash
1 | db.find({},{age:1,sex:1}) |
注意,除了_id字段之外,其余字段不可以在有字段为1的情况下设置为0
条件查找
符号
gt 大于
lt 小于
gte 大于等于
lte 小于等于
查找当前文档中age字段大于等于20的信息
bash
1 | db.find({age:{$gte:20}}) |
查找文档中age字段小于20的信息
bash
1 | db.find({age:{$lt:20}}) |
多条件查找
符号
and 且 (他用于模糊条件且)
查询文档中age字段大于5且age字段小于20的信息
语法 $and:[条件1,条件2,…]
他是直接查询符合数组所有条件的信息
bash
1 | db.user.find({$and:[{age:{$gte:5}},{age:{$lte:20}}]}) |
$in 存在
他用于精准匹配值,类似枚举
bash
1 | db.user.find({age:{$in:[1,2,3,5,7]}}) |
$or 或
db.user.find({KaTeX parse error: Expected ‘}’, got ‘EOF’ at end of input: or:[{age:{lte:5}},{age:{$gte:10}}]})
只要符合给定条件中的一个,就匹配成功
regex 正则查找
db.user.find({name:/3/i}) 正则查找name字段中含有’3’的字符串
排序
根据字段对信息进行排序
要先查找到数据在进行排序操作,根据age字段进行升序排序,-1为降序排序。
bash
1 | db.user.find().sort({age:1}) |
跳过与查找个数
count 数量
bash
1 | db.user.find().count() |
skip 跳过
bash
1 | db.user.find().skip(4) |
limit 查找信息数量
它规定只查找几条
bash
1 | db.user.find().limit(3) |
查找信息自增
$inc 字段自增
bash
1 | db.user.updateOne({name:'ceshi10'},{$inc:{age:1}}) 查询到信息,age字段随着每次更新自增 |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 编程知识学习笔记!
评论
ValineGiscus