python中mongodb的几种运算符

①比较运算符:

  等于:默认是等于判断,没有运算符

  小于:$lt(less than)

  小于等于:$lte(less than equal)

  大于:$gt(greater than)

  大于等于:$gte(greater than equal)

  不等于:$ne(not equal)

  db.stu.find({age:{$gte:18}})

②逻辑运算符:

  and:在json中写多个条件即可,查询年龄大于或等于18,并且性别为true的学生

  db.stu.find({age:{$gte:18},gender:true})

  or:使用$or,值为数组,数组中每个元素为json,查询年龄大于18,性别为false的学生

  db.stu.find({$or:[{age:{$gt:18},{gender:flase}}]})

  查询年龄大于18或性别为男生,并且姓名是郭靖

  db.stu.find({$or:[{age:{$gte:18},{gender:true}}],name:"gj"})

③范围运算符:

  使用“$in”,"$nin"判断是否在某个范围内,查询年龄为18,28的学生

  db.stu.find({age:{$in:[18,28]}})

④支持正则表达式

  使用//或regex编写正则表达式,查询姓黄的学生

  db.stu.find({name:/^黄/})

  db.stu.find({name:{$regex:"^黄"}})

⑤limit和skip

方法limit():用于读取指定数量的文档

  db.集合名称.find().limit(number)

  //查询2条学生信息  db.stu.find().limit(2)

方法skip():用于跳过指定数量的文档

  db.集合名称.find().skip(number)

  //db.stu.find().skip(2)

同时使用db.stu.find().limit(4).skip(5)或db.stu.find().skip(5).limit(4)

⑥自定义查询:

  使用$where后面写一个函数,返回满足条件的数据

  查询年龄大于30的学生

//db.stu.find(){

  $where:function(){

return this.age>30;

}

 }

⑦投影:

  在查询到的返回结果中,只选择必要的字段db.集合名称.find({},{字段名称:1...})

  参数为字段值,值为1表示显示,值为0不显

  特殊:对于_id列默认是显示的,如果不显示需要明确设置为0

⑧排序:

  方法sort(),用于对集合进行排序

  db.集合名称.find().sort({字段:1....})

  参数为1为升序排列

  参数为-1为降序排列

  根据性别降序,在根据年龄升序  db.stu.find().sort({gender:-1,age:1})

⑨统计个数

  方法count()用于统计结果集中文档条数

  db.集合名称.find({条件}).count()

  db.集合名称.count({条件})

  

  db.stu.find({gender:true}).count()

  db.stu.count({age:{$gt:20},gender:true}

⑩消除重复

  方法distinct()对数据进行去重

  db.集合名称。distinct("去重字段",{条件})

  db.stu.distinct(“hometown,{age:{$gt:18}}”)

转载于:https://www.cnblogs.com/zgl19991001/p/10712769.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值