您的位置:首页 > 数据库 > Mongodb

mongodb的查询文档(普通查询、条件操作符以及模糊查询)

2020-08-06 17:10 756 查看

1.db.集合名.find({筛选条件},{想要返回的键})

 如果想返回集合中的所有文档,那么第一个花括号里的可省略
 如果想返回文档中所有的键值,那么第二个花括号里可省略,例如如果只想返回title值而且也不想返回_id值,那么可以写:{“title”:1,"_id":0}
 如果单纯想返回集合中的所有文档的所有字段,那么可以直接:db.集合名.find()

2.db.getCollection(‘集合名’).find({})

3.结合条件操作符
 $gt 大于(greater than)
  eg:

db.col.update({"count":{\$gt:1}},{\$set:{"test2":"OK"}});

    将count大于1的文档数据的test2字段等于OK
 $lt 小于(less than)
  eg:
db.col.update({"count":{\$lt:5}},{\$set:{"test2":"OK"}});

    将count小于5的文档数据的test2字段等于OK
 $gte 大于等于(greater than equal)
  eg:
db.col.update({"count":{\$gte:5}},{\$set:{"test2":"OK"}});

     将count大于等于1的文档数据的test2字段等于OK
 $lte 小于等于(less than equal)
  eg:
db.col.update({"count":{\$lte:5}},{\$set:{"test2":"OK"}});

    将count小于等于5的文档数据的test2字段等于OK
 $ne 不等于(not equal)
  eg:
db.col.update({"count":{\$ne:5}},{\$set:{"test2":"OK"}});

    将count不等于5的文档数据的test2字段等于OK
 : 等于
  eg:
db.col.update({"count":1},{\$set:{"test2":"OK"}});

    将count等于1的文档数据的test2字段等于OK

4.模糊查询(查询代码中用到的\为转移字符)$regex

db.集合名.find({title:{$regex:/教/}})
或者
db.集合名.find({title:{$regex:'教'}})
或者
db.集合名.find({title:/教/})

 查询title字段中包含"教"字的文档

db.集合名.find({title:{$regex:/^教/}})
或者
db.集合名.find({title:{$regex:'^教'}})
或者
db.集合名.find({title:/^教/})

 查询title字段以"教"字开头的文档

db.集合名.find({title:{$regex:/教$/}})
或者
db.集合名.find({title:{$regex:'教$'}})
或者
db.集合名.find({title:/教$/})

 查询title字段以"教"字结尾的文档

5.反向模糊查询(查询代码中用到的\为转移字符)$not

db.集合名.find({title:{$not:/教/}})

 查询title字段中不包含"教"字或者没有title字段的文档

db.集合名.find({title:{$not:/^教/}})

 查询title字段不以"教"字开头的或者没有title字段的文档

db.集合名.find({title:{$not:/教$/}})

 查询title字段不以"教"字结尾的或者没有title字段的文档

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: