①比较运算符:

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

  小于:$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}}”)

mongodb的几种运算符的更多相关文章

  1. Java开发笔记(十四)几种运算符的优先级顺序

    到目前为止,我们已经学习了Java语言的好几种运算符,包括算术运算符.赋值运算符.逻辑运算符.关系运算符等基础运算符,并且在书写赋值语句时都没添加圆括号,显然是默认了先完成算术.逻辑.关系等运算,最后 ...

  2. mongodb的几种启动方法

    1 mongodb的几种启动方法   启动Mongodb服务有两种方式,前台启动或者Daemon方式启动,前者启动会需要保持当前Session不能被关闭,后者可以作为系统的fork进程执行,下文中的p ...

  3. 在python中有多少种运算符?解释一下算术运算符

    在python中,我们有7种运算符:算术运算符.关系运算符.赋值运算符.逻辑运算符.位运算符.成员运算符.身份运算符 我们有7个算术运算符,能让我们对数值进行算术计算 1.加号(+),将两个值相加 2 ...

  4. [转载]-win7启动本地MongoDB的四种方式

    2016年04月07日 09:52:34 cherry__cheng 阅读数:19451 标签: win7启动本地MongoDB的四种方式快速启动本地mongodb 更多 个人分类: mongodb& ...

  5. Python的6种运算符(日记)

    学习了许久的Python,我单独总结出了Python中比较常见的6种运算符,感觉略有不全,希望大伙可以一起讨论与研究Python! 一.算术运算符 加 减 - 乘 * 除 / 取余 % 取整 // 异 ...

  6. MongoDB中4种日志的详细介绍

    前言 任何一种数据库都有各种各样的日志,MongoDB也不例外.MongoDB中有4种日志,分别是系统日志.Journal日志.oplog主从日志.慢查询日志等.这些日志记录着MongoDB数据库不同 ...

  7. Spring系列之集成MongoDB的2种方法

    MongoDB是最流行的NoSQL数据库,SpringBoot是使用Spring的最佳实践.今天带大家讲一讲SpringBoot集成MongoDB的两种方式,MongoDB的安装自行去官网查询,本地开 ...

  8. java中使用mongodb的几种方式

    最近有时间看了一下mongodb,因为mongodb更容易扩展所以考虑使用mongodb来保存数据. 首先下载安装mongodb,这是很简单的,装好后使用mongod命令就可以启动数据库.正式部署的话 ...

  9. linux下登陆MongoDB的两种方式

    第一种:不带auth认证的 第二种:需要带auth认证的(即需要用户名和密码的) 当指定用户名和密码在查看数据,发现就可以看得到了 查看文章:开启MongoDB客户端访问控制

随机推荐

  1. 记一次被吊打的排位赛(writeup)

    XMAN通行证 给了一串疑似base64的东西: a2FuYmJyZ2doamx7emJfX19ffXZ0bGFsbg== 解密后得到: kanbbrgghjl{zb____}vtlaln 想到应该是 ...

  2. hikey960编译记录

    arm64内核编译命令: 1 make ARCH=arm64 hikey960-defconfig 2 make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- ...

  3. 执行大SQL脚本方法

    当我们需要在SQLServer数据库里面执行一个大的文件时,会发现数据库根本无法打开该脚本文件,原因是因为查询分析器只能执行100M以内的文件,所以脚本过大就会造成内存溢出.此时我们可以使用osql工 ...

  4. 阿里云服务器配置https(port443)后客户端 svn check out 失效解决办法

    1. 客户端环境 1. 操作系统:Windows 7 2. svn客户端:TortoiseSVN 2. 服务端环境 1. 云服务平台:阿里云 2. 操作系统:Windows Server 2008 R ...

  5. I - Beautiful People ZOJ - 2319 (二分法)

    The most prestigious sports club in one city has exactly N members. Each of its members is strong an ...

  6. 对oracle用户创建asm磁盘

    --root用户执行vi /etc/sysctl.conf #Install oracle settingfs.aio-max-nr = 1048576fs.file-max = 6815744#ke ...

  7. vscode插件解析-BookMark

    BookMark (书签):在编辑器中标记行并轻松跳转到它们. commands 书签:Toggle   标记/取消标记带书签的行 书签:Jump to Next  将光标向前移动到下面的书签 书签: ...

  8. Django组件-cookie与session

    一.会话跟踪技术 1.什么是会话跟踪技术 我们需要先了解一下什么是会话!可以把会话理解为客户端与服务器之间的一次会晤,在一次会晤中可能会包含多次请求和响应.例如你给10086打个电话,你就是客户端,而 ...

  9. FreeRTOS 启动进程调度后,程序卡死的部分原因分析。

    现象:1,RTOS  使用时 系统卡启动文件               B       .处. 原因分析:该种情况是由于定义开启了中断,但是未开启中断处理服务.程序执行到中断响应式无对应的程序响应 ...

  10. emacs Can't guess python-indent-offset, using defaults: 4

    首先,这只是一个提示,Emacs 在打开python 文件时,如果是个空文件,会有此提示. 在python.el文件配置中,有如下代码: Python.el (defcustom python-ind ...