先看下我集合结构,简单的集合名 user_document_test,使用navicat工具

 1.无条件查询,查询所有

db.user_document_test.find()

 查询只显示部分字段

db.user_document_test.find({},{_id:1,userName:1,address:1})

 

 2. 条件查询之_id查询,_id查询需要使用ObjectId包着

db.user_document_test.find({_id:ObjectId('617a14fdc183e57b879d7415')})

其它条件查询,单个条件查询

db.user_document_test.find({userName:'lily'})

 3.多个条件组合查询

db.user_document_test.find({status:1,sex:0})

 4.模糊查询

db.user_document_test.find({address: /北京/});

 以某个字符开头查询

db.user_document_test.find({address: /^北/});

 以某个字符结尾查询

db.user_document_test.find({address: /区$/})

 5.符号匹配查询,大于($gt),小于($lt),大于等于($gte),小于等于($lte),等于($eq),不等于($ne),

db.user_document_test.find({age:{$gte:20,$lte:30}})

 db.user_document_test.find({phone:{$eq:'13500001111'}})

 

db.user_document_test.find({phone:{$ne:'13500001111'}}) 

 

 6.多个in查询 $in 后面的参数必须是个数组[]格式  $nin不在后面也是数组

db.user_document_test.find({age:{$in:[25,30]}})

db.user_document_test.find({age:{$nin:[15,50]}})

7. or 查询

db.user_document_test.find({$or:[{address:/北京/},{age:30}]})

 

  8.函数排序 sort(1=正序,-1=倒叙),跳过skip(数字表示跳过几个,如2表示跳过前2个),限制条数limit(数字表示只显示前面几条)

db.user_document_test.find().sort({age:-1})

db.user_document_test.find().sort({age:-1}).skip(2)

db.user_document_test.find().sort({age:-1}).skip(2).limit(2)

 

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐