今天继续学习MongoDB的相关知识,主要包含例如以下:

--find具体解释

--分页与排序

--游标和其它知识

1.指定返回的键

db.person.find({},{"_id":0,"name":1,"country":1})这样就仅仅把name键和country键查询出来了,注意其它的假设不写默认不显示,可是假设_id假设不写,默认是显示的.

2.查询条件

db.person.find({"age":{$gte:25,$lte:27}},{"_id":0,"name":1,"country":1})查询年龄在25-27岁之间的学生的name和country.

db.person.find({"country":{$ne:"Korea"}},{"_id":0,"Math":1})查询全部不是韩国学生的数学成绩

3.包括或不包括

$in 或 $nin

db.person.find({"country":{$in:["USA","China"]}},{"_id":0,"Math":1})查询国籍是美国或者中国的学生数学成绩

db.person.find({"country":{$nin:["USA","China"]}},{"_id":0,"Math":1})查询国籍不是美国或者中国的学生的数学成绩

4.or查询

$or

db.person.find({$or:[{"Chinese":{$gt:85}},{"English":{$gt:90}}]},{"_id":0,"name":1,"Chinese":1,"English":1})查询语文成绩大于85或者英语吧成绩大于90的学生信息

5.正则查询

db.person.find({name:/li/i},{"_id":0,"name":1})查询出名字中含有"li"的学生的姓名

6. $not的使用

db.person.find({name:{$not:/li/i}},{"_id":0,"name":1})查询出名字中不含有"li"的学生的姓名

注意:$not和$nin的差别在于:$not能够用在不论什么地方,而$nin仅仅能够用在集合上

7.数组查询$all和index应用

查询喜欢看MongoDB和JS这两本书的学生

db.person.find({books:{$all:["MongoDB","JS"]}},{"_id":0,"name":1})

查询第二本书是 JAVA的学生信息

db.person.find({"books.1":"JAVA"})

8.查询指定长度数组size

db.person.find({"books":{$size:4}})

9.查询出jim的书籍的数量

var jim =  db.person.find("name":"jim")
while(jim.hasNext()){
obj = jim.next();
print(obj.books.length)
}

10.$slice操作符返回文档指定数组的内部值

查询出jim书架中的第2-4本书

db.person.find({"name":"jim"},{books:{$slice:[1,3]}})

查询出最后一本书

db.person.find({"name":"jim"},{books:{$slice:-1}})

这次先到这,下次继续,游标与排序.

MongoDB学习笔记<四>的更多相关文章

  1. MongoDB学习笔记(四)--索引 && 性能优化

    索引                                                                                             基础索引 ...

  2. MongoDB学习笔记(四)

    第四章 Mongodb聚合函数 插入 测试数据 for(var j=1;j<3;j++){ for(var i=1;i<3;i++){ var person={ Name:"ja ...

  3. MongoDB 学习笔记(四):索引

    一.索引的基本使用 1.建立索引 在shell中为某个key建立索引的方法为:db.集合名.ensureIndex({key:1}),其中的key表示为哪个key建立索引,1表示升序建立索引,而-1表 ...

  4. MongoDB 学习笔记(四)C# 操作MongoDB

    C#驱动对mongodb的操作,目前驱动有两种:官方驱动和samus驱动,不过我个人还是喜欢后者, 因为提供了丰富的linq操作,相当方便. 官方驱动:https://github.com/mongo ...

  5. MongoDB学习笔记(四、MongoDB安全管理)

    目录: mongoDB角色 mongoDB初始化账号 mongoDB安全认证 其它常用的命令 mongoDB角色: mongoDB初始化账号: 1.启动mongoDB ./mongod -f mong ...

  6. Mongodb学习笔记(四)管理

    一.数据导出.导入 数据导入:mongoexport ./mongoimport -d 数据库 -c 集合 文件名 数据导出:mongoimport 参数说明: -d:指明使用的库,如text -c: ...

  7. MongoDB学习笔记(五)--复制集 && sharding分片

    主从复制                                                                                       主从节点开启 主节 ...

  8. MongoDB学习笔记(三)--权限 && 导出导入备份恢复 && fsync和锁

    权限                                                                                             绑定内网I ...

  9. mongoDB 学习笔记纯干货(mongoose、增删改查、聚合、索引、连接、备份与恢复、监控等等)

    最后更新时间:2017-07-13 11:10:49 原始文章链接:http://www.lovebxm.com/2017/07/13/mongodb_primer/ MongoDB - 简介 官网: ...

随机推荐

  1. 【剑指offer学习】求和为定值的两个数(拓展)

    接着上面一篇文章: http://blog.csdn.net/u013476464/article/details/40651451 接下来我们拓展一下题目,如果数组是乱序的,并且规定数组中的元素所有 ...

  2. Spring.Net控制翻转、依赖注入、面向切面编程

    Spring.Net快速入门:控制翻转.依赖注入.面向切面编程 Spring.Net主要功能: 1.IoC:控制翻转(Inversion of Control)  理解成抽象工厂翻转控制:就是创建对象 ...

  3. RH133读书笔记(9)-Lab 9 Installation and System-Initialization

    Lab 9 Installation and System-Initialization Goal: Successfully install Red Hat Enterprise Linux. Sy ...

  4. Servlet上传文件

    Servlet上传文件 1.准备工作 (1)利用FileUpload组件上传文件,须要到apache上下载commons-fileupload-1.3.1.jar 下载地址:http://common ...

  5. Nginx + IIS

    Nginx + IIS 配置,实现负载均衡   当你的Web应用程序访问量大的时候,一台服务器可能会因为压力过大而无法处理所有的请求.此时,可以增加服务器,采用负载均衡来分担所有的请求.关于Nginx ...

  6. c语言实现hashtable,相似C++的map和iOS的NSDictionary

    跟线性数组和链表不同.HashTable是高速查找的数据结构.本文中的HashTable使用链表处理数组. 该HashTable能够指定table的长度.提供了遍历的方法. 包含table的长度的选择 ...

  7. Objective-c正确的写法单身

    Singleton模式iOS发展可能是其中最常用的模式中使用的.但是因为oc语言特性本身,想要写一个正确的Singleton模式是比较繁琐,iOS中单例模式的设计思路. 关于单例模式很多其它的介绍请參 ...

  8. Html5响应式设计与实现广场

    由于提出的想法响应式设计,越来越多的网站使用这样的思想.各类大型网站如雨后春笋般涌了出来.例如:小米商城.天猫等. 至于响应式设计的概念等大家能够去百度百度,我这里就不相信解说了.直接为大家带来源代码 ...

  9. 结构的具体说明sublime text 2/3的Golang开发环境

    1.下载并安装sublime text 2/3 官网下载:http://www.sublimetext.com/ 2.安装成功sublime text后.启动sublime text.选择菜单栏&qu ...

  10. Windows下Jekyll安装

    一直用Mac,换了新公司使用的电脑是windows,网上粗略的看了一下Jekyll的安装.简略的实现了一遍 首先安装Ruby Ruby安装文件下载地址 下载对应版本,我的电脑是64位的下载64位的版本 ...