MongoDB集合的多种查询方式

Jackey MongoDB 1,279 次浏览 1条评论

collection数据准备

use shijiange

db.myuser.insert( {name:"shijiange1", age: 20} )

db.myuser.insert( {name:"shijiange2", age: 28} )

db.myuser.insert( {name:"shijiange3", age: 38} )

db.myuser.insert( {name:"zhangsan1", age: 58} )

db.myuser.insert( {name:"zhangsan2", age: 68} )

db.myuser.insert( {name:"zhangsan3", age: 25} )

 

pretty易读的方式

db.myuser.find().pretty()

 

limit限制条数查询

db.myuser.find()

db.myuser.find().limit(2)   #查看前面两条记录

 

使用skip跳过记录

db.myuser.find().skip(2).limit(2)

 

mongodb分页查询

db.myuser.find().skip(0).limit(2)

db.myuser.find().skip(2).limit(2)

db.myuser.find().skip(4).limit(2)

 

使用sort进行排序

db.myuser.find().sort({ age: 1 }) #按age升序

db.myuser.find().sort({ age: -1 }) #按age降序

 

根据字段进行数字比较查询

db.myuser.find({ age: {$lt: 30} })

$gt #大于

$lt #小于

$gte #大于或等于

$lte #小于或等于

$ne #不等于

 

查询多种条件的组合

db.myuser.find( {name: 'shijiange1'} )

db.myuser.find( {name: 'shijiange2'} )

db.myuser.find({ $or: [ {name: 'shijiange1'},{name: 'shijiange2'} ] })

db.myuser.find({ $and: [ {name: 'shijiange1'},{age: 20} ] })

 

mongodb正则查询,支持普通正则和扩展正则

db.myuser.find({ name: {$regex: "shijiange[1-9]"} }) #普通正则过滤

db.myuser.find( {"name":{$regex:"(zhangsan)"}} ) #支持分组正则

一条评论

  1. 兴化人才网 2021年8月21日 下午5:54 回复

    收藏了,最近在学习数据库

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

Go