mongodb 学习笔记 3 --- 查询
在mongodb的查询中可以通过使用如下操作符进行深度查询
1.条件操作符
$gt $gte : > >= {"age":{"$gt":18}}
$lt $lte: < <=
$or : 或 {"$or":[{"name":"jack"},{"name":"mike"}]}
$in/$nin : 在集合中/不在集合中 {"age":{"$in":[18,20]}}
$and: 且 用法同$or
$not: 非 {"name":{"$not":"jack"}}
$mod: 取模 {"age":{"$mod":[5,1]}} 选出除以5余数得1的结果
$exists: 查询时附加该键值是否存在 {"name":{"$exists":true}}
$all: 查询的集合包含条件中全部的内容,但是是无序的 {"name":{"$all":["jack","mike"]}} 中招的可能是 name:["mike","jack","mary"] ,也有 name:["miky","mike","jack"]
$size: 查询出限定属性下长度值为给出的size的数组 {"list":{"$size":2}}
$slice: 取值正负数字,返回多少条文档 {"list":{"$slice":2}}
$elemMatch : 在查询数组时限定取值条件 {"list":{"$elemMatch":{"$gt":10,"$lt":20}}} 如果不加 $elemMatch 则会匹配到 list:[5,25] 因为5<20 25>10 只能应用在数组类型的属性中
$where : 会执行一段js {"$where":function(){return ...}}
除了操作符之外,还有游标操作辅助查询
2.游标操作
next: 遍历游标,并将其取出游标,在shell中执行一次后默认后面全部执行,最终会导致游标结果集为空
hasNext: 检查游标是否为空
forEach: 遍历,和js数组中的forEach功效一致
limit: 取返回结果的前n个,不足n个全部返回
skip: 跳过返回结果的前n个
sort: 根据返回结果中的某一字段进行排序 1 升序 -1 降序
一些总结
要避免使用skip跳过大量数据
mongodb 学习笔记 3 --- 查询的更多相关文章
- MongoDB学习笔记六—查询下
查询内嵌文档 数据准备 > db.blog.find().pretty() { "_id" : ObjectId("585694e4c5b0525a48a441b5 ...
- MongoDB学习笔记五—查询上
数据准备 { , "goods_name" : "KD876", "createTime" : ISODate("2016-12- ...
- MongoDB 学习笔记之 查询表达式
查询表达式: db.stu.find().count() db.stu.find({name: 'Sky'}) db.stu.find({age: {$ne: 20}},{name: 1, age: ...
- 【转】MongoDB学习笔记(查询)
原文地址 MongoDB学习笔记(查询) 基本查询: 构造查询数据. > db.test.findOne() { "_id" : ObjectId("4fd58ec ...
- MongoDB学习笔记系列
回到占占推荐博客索引 该来的总会来的,Ef,Redis,MVC甚至Sqlserver都有了自己的系列,MongoDB没有理由不去整理一下,这个系列都是平时在项目开发时总结出来的,希望可以为各位一些帮助 ...
- PHP操作MongoDB学习笔记
<?php/*** PHP操作MongoDB学习笔记*///*************************//** 连接MongoDB数据库 **////*************** ...
- MongoDB 学习笔记(原创)
MongoDB 学习笔记 mongodb 数据库 nosql 一.数据库的基本概念及操作 SQL术语/概念 MongoDB术语/概念 解释/说明 database database 数据库 table ...
- mongoDB 学习笔记纯干货(mongoose、增删改查、聚合、索引、连接、备份与恢复、监控等等)
最后更新时间:2017-07-13 11:10:49 原始文章链接:http://www.lovebxm.com/2017/07/13/mongodb_primer/ MongoDB - 简介 官网: ...
- MongoDB学习笔记(六)--复制集+sharding分片 && 总结
复制集+sharding分片 背景 主机 IP 服务及端口 Server A ...
随机推荐
- FLT_MIN,FLT_MAX,FLT_EPSILON
FLT_MIN,FLT_MAX,FLT_EPSILON * min positive value */最小的正值#define FLT_MIN 1.175494351e-38F /* max val ...
- Windows系统Unity3D中的快捷键
Windows系统Unity3D中的快捷键 组合键 键 功能 File 文件 Ctrl N New Scene 新建场景 Ctrl O Open Scene 打开场景 Ctrl S Sav ...
- 2017中国大学生程序设计竞赛-哈尔滨站 A - Palindrome
Palindrome Time Limit: 6000/3000 MS (Java/Others) Memory Limit: 262144/262144 K (Java/Others)Tota ...
- [HAOI2006]受欢迎的牛 tarjan缩点 + 拓扑排序
---题面--- 题解: 首先tarjan缩点应该还是容易想到的,因为喜爱具有传递性,所以一个强联通分量里面的点实际上是全部等效的,所以我们可以缩成一个方便判断, 缩完点之后整张图就变成了一个有向无环 ...
- Android 常用控件自定义样式RadioButton、CheckBox、ProgressBar、
一.RadioButton / CheckBox 系统自带的RadioButton/CheckBox的样式,注定满足不了实际运用中的情况,有时候自定义自己的样式:此次把自己中工作学习过程中所学到的东西 ...
- 【基础】ASP.net MVC 文件下载的几种方法(欢迎讨论)
在ASP.net MVC 中有几种下载文件的方法 前提:要下载的文件必须是在服务器目录中的,至于不在web项目server目录中的文件下载我不知道,但是还挺想了解的. 第一种:最简单的超链接方法,&l ...
- BZOJ4539 [Hnoi2016]树 【倍增 + 主席树】
题目链接 BZOJ4539 题解 我们把每次复制出来的树看做一个点,那么大树实际上也就是一棵\(O(M)\)个点的树 所以我们只需求两遍树上距离: 大树上求距离,进入同一个点后在模板树上再求一次距离 ...
- 洛谷 P1311 选择客栈 解题报告
P1311 选择客栈 题目描述 丽江河边有 \(n\) 家很有特色的客栈,客栈按照其位置顺序从 \(1\) 到 \(n\) 编号.每家客栈都按照某一种色调进行装饰(总共 \(k\) 种,用整数 \(0 ...
- de4dot 用法
使用de4dot反混淆一下 用法 de4dot -f input.dll -o output.dll
- luoguP1357 花园
矩阵乘法优化dp 注意环形处理: 发现,对于一个初始状态s的方案数,就是填n次后,再回到自己的状态.期间都是合法的话,那么一定这个方案就合法. 和开始状态有关.所以先把状态转移矩阵的(n-m)乘出来. ...