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}}”)
mongodb的几种运算符的更多相关文章
- Java开发笔记(十四)几种运算符的优先级顺序
到目前为止,我们已经学习了Java语言的好几种运算符,包括算术运算符.赋值运算符.逻辑运算符.关系运算符等基础运算符,并且在书写赋值语句时都没添加圆括号,显然是默认了先完成算术.逻辑.关系等运算,最后 ...
- mongodb的几种启动方法
1 mongodb的几种启动方法 启动Mongodb服务有两种方式,前台启动或者Daemon方式启动,前者启动会需要保持当前Session不能被关闭,后者可以作为系统的fork进程执行,下文中的p ...
- 在python中有多少种运算符?解释一下算术运算符
在python中,我们有7种运算符:算术运算符.关系运算符.赋值运算符.逻辑运算符.位运算符.成员运算符.身份运算符 我们有7个算术运算符,能让我们对数值进行算术计算 1.加号(+),将两个值相加 2 ...
- [转载]-win7启动本地MongoDB的四种方式
2016年04月07日 09:52:34 cherry__cheng 阅读数:19451 标签: win7启动本地MongoDB的四种方式快速启动本地mongodb 更多 个人分类: mongodb& ...
- Python的6种运算符(日记)
学习了许久的Python,我单独总结出了Python中比较常见的6种运算符,感觉略有不全,希望大伙可以一起讨论与研究Python! 一.算术运算符 加 减 - 乘 * 除 / 取余 % 取整 // 异 ...
- MongoDB中4种日志的详细介绍
前言 任何一种数据库都有各种各样的日志,MongoDB也不例外.MongoDB中有4种日志,分别是系统日志.Journal日志.oplog主从日志.慢查询日志等.这些日志记录着MongoDB数据库不同 ...
- Spring系列之集成MongoDB的2种方法
MongoDB是最流行的NoSQL数据库,SpringBoot是使用Spring的最佳实践.今天带大家讲一讲SpringBoot集成MongoDB的两种方式,MongoDB的安装自行去官网查询,本地开 ...
- java中使用mongodb的几种方式
最近有时间看了一下mongodb,因为mongodb更容易扩展所以考虑使用mongodb来保存数据. 首先下载安装mongodb,这是很简单的,装好后使用mongod命令就可以启动数据库.正式部署的话 ...
- linux下登陆MongoDB的两种方式
第一种:不带auth认证的 第二种:需要带auth认证的(即需要用户名和密码的) 当指定用户名和密码在查看数据,发现就可以看得到了 查看文章:开启MongoDB客户端访问控制
随机推荐
- story 泄露服务器libc版本
记录下学到的姿势,利用信息泄露得到服务器libc 至少两个函数偏移,利用libc-databse得到服务器libc版本 传送门 泄露脚本如下 from pwn import * context.log ...
- 【原创】大数据基础之Logstash(4)高可用
logstash高可用体现为不丢数据(前提为服务器短时间内不可用后可恢复比如重启服务器或重启进程),具体有两个方面: 进程重启(服务器重启) 事件消息处理失败 在logstash中对应的解决方案为: ...
- CSS 左右两边底部对齐
https://demo.cssworld.cn/4/3-2.php <style type="text/css"> .parent{ width:500px; tex ...
- 二, 字符串和编码之 python 格式化
1),在Python中,采用的格式化方式和C语言是一致的,用%实现,看下例: >>> 'Hello, %s' % 'world' 'Hello, world' >>> ...
- 【Java】「深入理解Java虚拟机」学习笔记(5)- 类加载
C/C++在编译时需要进行连接,而Java的类加载.连接和初始化是在运行时完成的. 图 类的生命周期 图中解析的过程不一定在准备和初始化之间,也可以在初始化之后再开始,以支持Java的运行时动态绑定 ...
- ssh-copy-id使用非默认22端口时
http://blog.sina.com.cn/s/blog_541a3cf10101epzf.html
- 简易promise的实现(一)
code 最近在思考promise的实现原理 于是准备自己写一个简单的demo 一开始想到的问题有两个 1.链式调用 2.异步顺序执行 -------------------------------- ...
- CYJian的新春虐题赛
题解: t1: 算了一下发现乘法也是可以莫比乌斯反演的 然后就直接对原式莫比乌斯反演了 大概加法是$\mu {(i)}*f(i)$ 乘法就是$f(i)^{\mu {(i)}}$ 然后这个算法成功达到$ ...
- MBR分区操作-增加、扩展、删除
MBR分区操作-增加.扩展.删除 GPT分区参考 http://www.blogjava.net/haha1903/archive/2011/12/21/366942.html l fdisk 显示 ...
- 重新拾取:TFS2017钉钉机器人源代码签入通知
http://www.cnblogs.com/79039535/p/9316791.html 现在很多公司办公都使用钉钉打卡签到,于是鉴于公司也使用钉钉就打算用钉钉来做一个源代码签入通知. 首先先去打 ...