MongoDB学习笔记02
MongoDB中使用find来进行查询,查询就是返回一个集合中文档的子集,子集合的范围从0个文档到整个集合。find的第一个参数决定了要返回哪些文档。空的查询文档{}会匹配集合的全部内容,要是不指定查询文档,默认就是{}。
MongoDB查询使用上还是有些限制的,数据库所关系的查询文档的值必须是常量,也就是不能引用文档中其它键的值。
查询条件 "$lt"、"$lte"、"$gt"、"$gte"、"$ne"就是全部的比较操作符,分别对应<、<=、>和>=与"不相等";
"$in" 用来查询键值在某个范围内值 "$nin" 用来查询键值不在某个范围内的值
"$or" 接受一个包含所有可能条件的数组作为参数
"$mod" 取模运算符,会将查询的值除以第一个给定值,若余数等于第二个给定值则返回该结果
"$not" 查询与特定模式不符的文档
一个键可以有多个条件,但一个键不能对应多个更新修改器
null不仅仅匹配自身而且匹配“不存在的”,这种匹配还会返回缺少这个键的所有文档
如果仅仅想要匹配键值为null的文档,既要检查该键的值是否为null,还要通过“$exists”条件判断键值是否存在
MongoDB使用Perl兼容的正则表达式(PCRE)库来匹配正则表达式,PCRE支持的正则表达式语法都能被MongoDB接受,在使用正则表达式前,可以现在JavaScrip shell中检查一下语法
如果需要通过多个元素来匹配数组,就要使用"$all"
“$size”可以用其查询指定长度的数组
“$slice”返回数组的一个子集合,可以接受偏移值和要返回的元素的数量,除非特别声明,否则返回文档中的所有键
查询内嵌文档有两种方法:查询这个文档,或只针对其键/值对进行查询
查询整个文档要求结构与原数据完全匹配(包括顺序一样)
"$elemMatch"将限定条件进行分组,仅当对一个内嵌文档的多个键操作时才会用到,结果返回满足条件的所有文档
"$where"可以执行任意JavaScript作为查询的一部分,是的查询几乎能做任何事情,但是不是必要时要避免使用"$where"查询,因为它在速度上要比常规查询慢很多,每个文档都要从BSON转为JavaScript对象,然后通过"$where"的表达式来运行,同样还不能使用索引
MongoDB学习笔记02的更多相关文章
- MongoDB学习笔记—02 MongoDB入门
Mongodb的基本概念 文档:是MongoDB中数据的基本单元,类似于关系型数据库中的行. 集合:多个文档组成一个集合,类似于关系型数据库中的表. 数据库:MongoDB的当个实例可以容纳多个独立的 ...
- mongoDB 学习笔记纯干货(mongoose、增删改查、聚合、索引、连接、备份与恢复、监控等等)
最后更新时间:2017-07-13 11:10:49 原始文章链接:http://www.lovebxm.com/2017/07/13/mongodb_primer/ MongoDB - 简介 官网: ...
- Redis:学习笔记-02
Redis:学习笔记-02 该部分内容,参考了 bilibili 上讲解 Redis 中,观看数最多的课程 Redis最新超详细版教程通俗易懂,来自 UP主 遇见狂神说 4. 事物 Redis 事务本 ...
- MongoDB学习笔记系列
回到占占推荐博客索引 该来的总会来的,Ef,Redis,MVC甚至Sqlserver都有了自己的系列,MongoDB没有理由不去整理一下,这个系列都是平时在项目开发时总结出来的,希望可以为各位一些帮助 ...
- 软件测试之loadrunner学习笔记-02集合点
loadrunner学习笔记-02集合点 集合点函数可以帮助我们生成有效可控的并发操作.虽然在Controller中多用户负载的Vuser是一起开始运行脚本的,但是由于计算机的串行处理机制,脚本的运行 ...
- PHP操作MongoDB学习笔记
<?php/*** PHP操作MongoDB学习笔记*///*************************//** 连接MongoDB数据库 **////*************** ...
- MongoDB 学习笔记(原创)
MongoDB 学习笔记 mongodb 数据库 nosql 一.数据库的基本概念及操作 SQL术语/概念 MongoDB术语/概念 解释/说明 database database 数据库 table ...
- MongoDB学习笔记(转)
MongoDB学习笔记(一) MongoDB介绍及安装MongoDB学习笔记(二) 通过samus驱动实现基本数据操作MongoDB学习笔记(三) 在MVC模式下通过Jqgrid表格操作MongoDB ...
- 机器学习实战(Machine Learning in Action)学习笔记————02.k-邻近算法(KNN)
机器学习实战(Machine Learning in Action)学习笔记————02.k-邻近算法(KNN) 关键字:邻近算法(kNN: k Nearest Neighbors).python.源 ...
随机推荐
- (转)@@trancount解析
在处理事务的时候,一般都用RollBack Transaction来回滚,但是如果在嵌套事务中这样使用的话,就会出现错误. 在SqlServer里,嵌套事务的层次是由@@TranCount全局变量反映 ...
- Oracle关联查询关于left/right join的那点事
/*题外话 --更改foreign key约束定义引用行(delete cascade/delete set null/delete no action),默认delete on action--引用 ...
- HTML5开发入门经典教程和案例合集(含视频教程)
HTML5作为下一代网页语言,对Web开发者而言,是一门必修课.本文档收集了多个HTML5经典技术文档(HTML5入门资料.经典)以及游戏开发案例以及教学视频等,帮助同学们掌握这门重要的技术. 资源名 ...
- 设置Toast显示位置
设置Toast显示位置 两个方法可以设置显示位置: 方法一:setGravity(int gravity, int xOffset, int yOffset)三个参数分别表示(起点位置,水平向右位移, ...
- JSP学习笔记 - 源码 -- JSP Custom Tags -- JSP自定义标记
NetBeans 项目demo下载地址>> http://files.cnblogs.com/files/AndrewXu/JSPCustomTags.zip
- FileUtils类应该有哪些内容
源码:https://github.com/kymjs/KJFrameForAndroid Environment类的使用:http://www.2cto.com/kf/201408/327215.h ...
- Lua 字符串函数小结
1.求字符串长度 string.len(str) 2.大小写转换 string.upper(str) string.lower(str) 3.字符串查找(非全局) --func_string.lua ...
- The Love-Letter Mystery
def numOperations(testStr): num = 0 n = len(testStr) for i in range(n / 2): num += abs(ord(testStr[i ...
- 无法读取配置节 system.serviceModel 因为它缺少节声明的解决方法
无法读取配置节 system.serviceModel 因为它缺少节声明的解决方法,需要的朋友可以参考下 在Windows Server2008 R2中的IIS7中部署WCF服务时报出如题错误: HT ...
- win7自由调整CMD窗口
有如下命令,只需要改动相关参数即可以任意改变cmd窗口大小. mode con lines= mode con cols= color cls @cmd